Corrected a bug preventing days from being nudged forward after adjusting the month

Not sure if there's any reason to _not_ do it if day is 0, leaving it as 0 breaks with an "argument out of range" error when it comes time to return the time. All the existing tests pass, and I've added a test for the case that was causing the error.