There is a bug in SCOM 2016 where if you choose a different Operations Manager Database Name during install, schedule maintenance mode won’t work!
The Jobs will run but nothing is put into Maintenance Mode. You won’t get an error in SCOM or in the event log.
As you can see below I named my “OperationsManager” Database “SCOMDB”
The stored procedure has ‘OperationsManager’ hard coded as the Database name so it fails!
The workaround is to change the stored procedure that creates these Schedules.
The stored procedure name is p_MaintenanceScheduleCreate
Right click Modify.
Find the line
SET @SQLCommand = CONCAT('EXEC OperationsManager.dbo.p_MaintenanceScheduleJobStep ''', @ScheduleId, '''');
and change OperationsManager to your database name and click Execute
You will have to delete all your Schedules in the console.
Now they run without issue.
This is a known bug and will be fixed in SCOM 2016 UR3.