Today, in the thermostat app, the only way to set a thermostat to off is to restrict the app from running. For a window / mini-split, there's plenty of use cases where I'd just want the unit "off" until the next scheduled period, but forcing me to restrict the app means I have to jump through all sorts of hoops to make that happen.
Quite simply, being able to set Mode to Off here (which is technically possible) would be hugely helpful.
I was going to say I'm pretty sure the thermostat scheduler just shows the modes that the driver for the thermostat says it supports and to check the thermostat device's supported modes, but mine says it supports an off mode and when I try to setup a thermostat scheduler instance, it doesn't show off in the list of modes to choose from, so you may be correct. Might still want to check the device though to make sure it's a mode exposed by the driver.
It definitely supports "Off" - and when the Thermostat Scheduler goes into Restricted mode, it sends the Off command and it does exactly what you'd expect. You can also go into the device itself and click Off and it works.
So here's what I notice, both in your screenshot, my device (which is also a custom driver), and a virtual thermostat. I can choose "off" from the dropdown of set thermostat mode... but look at the current states. "Off" does not show as a supportedThermostatMode. I think this may be the problem. TS only looks at this list as far as I can tell.
I am not in a position to test at the moment. You could try doing this to manually change your supported modes and see if off then shows in the scheduler.
I have not done any coding for Hubitat, but I've done coding before and I am looking at all the code in that driver and the only possible thing I see is this starting on line 592, which does not define the off state.
Did you try switching to the virtual driver and manually changing the supported modes? If you do that and it still doesn't work then the problem probably lies elsewhere.