The rescheduling feature is not consistent when rescheduling jobs set to run on the 31st, because the rescheduled job may be set to the 30th of the subsequent month, which may not be desirable by the client.  This is normal application functionality and it is recommended that any job that needs to run on the 31st day of the month be manually entered into the system as a non-repeating job with a specific run date, or set to run yearly on specific months that have 31 days.  Setting up a job to run, repeatedly, on the 30th does not run into the same issues.