I'd like to add to this. Since this doesn't completely format every date, here's a modification to make it even better
right click on the field and select format field
click on the Date Tab
click on Custom field
If it is date time make it Date only
click on the date tab
Change your formating to the way you want it
in the seperators
prefix=Non
First = use a formula
if day({YourDateField})in [1, 21, 31] then ' st ' else
if day({YourDateField}) in [2,22]then ' nd ' else
if day({YourDateField}) in [3,23] then ' rd ' else
'th, '
Second = ' '
Suffix=None