I've deleted the birthday from the contact then tried deleting the whole contact but the birthday still remains on the calendar with no option to delete
Verify which account(s) are being read by the calendar - you may find an associated contact list with that ref that still has the entry. I would assume it has to do with multiple contact lists.