dtp.parse is filling in the missing day with the current date's day. You ran the code on 2013/01/29 and day 29 does not exist in February (i.e. 1994/02/29).
Use this instead:
dtp.parse('1994/01'+'/01')
It will give consistent results (first day of month) regardless of when the code is executed.