in reply to d-mmm-yyyy to DOY (day of year)
$doy = Day_of_Year($year,$month,$day); [download]
If parsing dates doesn't work out so well without an explicit format, you can fall back on POSIX::strptime.