Fix monthByName

``setDate()`` expects an integer from 1 - 31 (not from 0 - 30).
See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/setDate

Yeah I know, javascript's date methods are quite inconsistent...