Just a wild guess but, as I'm sure you're aware, Access wants to help you ... really, really, desparately wants to. So much so that it casts strings or numbers to dates if they are used in a context where a date is required.
In the first case, that includes trying to coerce a string in the form " value1/value2/value3" into something it can interpret as a date. I suspect that what's happening is that Access is saying:
* My internal date format is m/d/yy so I need to get 4/23/003 into that form.
* "4" looks OK as a month and "23" looks OK as a day.
* the year must be "003". Is that a 4-digit date? No, obviously not.
* OK then does it evaluate to being a value between 0 and 99?
* It does! It evaluates to 3, dropping the leading zeros.
* My rule is that 2-digit years between 00 and 30 are in the 21st century and 31-99 in the twentieth so 3 equates to 3 + 2000 or 2003.
* "991", "992", etc. don't have this problem because they do not evaluate to a number between 0 and 99 ... therefore the WHOLE year must be 991 or 992.
To check this out, test something like "4/23/070". If I'm guessing correctly, that should be interpreted as April 23, 1970 and "4/23/025" should be April 23, 2025.