Check to see if the year '05' is the same as '2005' (or it could be "the year 5 A.D." or 1905)... Some times you need to add 1900.. others you don't.
Also be sure if the month is zero or one based.
I have ripped out many hairs working with dates.
The safest thing is to ALWAYS convert to 4-digit year and establish 1 or 0 base for months at top of code, (ie- after any input is parsed, normalize your dates to YYYYMMDD format).
When all is said and done, I check the dates January 1st, February 28th and/or 29th and December 31st for a few known years just to make sure things work as expected. Ugly problems will reveal themselves on these dates if there are problems.
It also helps if your data is in a known range of years. Some modules, languages or operating systems can only handle certain date ranges, usually 1980-2099 are safe.