in reply to Am I missing something here?

A "use strict;" at the top of that source file couldn't hurt either. Remember also that $Month will be a number from 0 to 11, not 1 to 12.