Check date was too strict

Ensure that the date be set to a valid value based on the actual
disabled date range. Previously the newDate value was being modified by
the newDate.subtract() getting applied..in particular it was applied
twice when the time/date was being decremented.