do the sanity checks on a separate date object, so that the uncertainty expressed with 0 d/m isn't removed svn: r23124