@eviltofu short answer, you can't.
Long answer, swift encodes date as a number of seconds. This value is stored as a double. Doubles and floats and anything with decimand places are never 100% accurate.
See: https://stackoverflow.com/questions/4776813/inconsistencies-with-double-data-type-in-c