Remember also that not all seed words generated are valid, the 12th/24th are checksums, so if it fails the checksum test it's obviously not the right mnemonic seed/date.
D'oh! And here we are trying to derive all seeds formed by the date shift combinations...
I have no idea how I'm going to fit a checksum function in the code though.