Fix date1 - date2 where date2 is greater than date1

This fixes the result of `date1 - date2` where date2 is greater than date1 and date1 and date2
are in different calendar years.

@arjclark, please review.
Can we get a test for year passing just over the year e.g. 1991-12 subtract 1992-01 as well (just want to be sure of the close differences working too).