Yes, if I remember correctly VisualCron (by design) doesn't consider either "Server Off" to be "missed" for purposes of that feature, nor a job that didn't run due to a "time exception" to be missed.
At one point, I had a set of jobs that used the VisualCron API through powershell inspect the state of the job list, compare it against settings exports (which I took every five minutes, and kept the previous one and the last one from the previous day) and a couple of variables that could be used to describe the start time and duration of planned outages, and generate jobs constructed entirely of "run job" tasks based on what jobs were projected to have their next run during an upcoming planned outage (split between before and after midnight)...and then, on server start, what jobs had not run since a given time (usually when the outage started) and had "next run" values more than some given threshold into the future. I then reviewed those jobs manually, enabled and disabled tasks as appropriate, and ran them. (We did eventually get to the point where just running the generated jobs automatically without manual review should have been fine, but never to the point where that was what actually happened.)
There are definitely drawbacks to that approach. It's complicated; it can be fragile; working with the API that way is somewhat tricky and not necessarily guaranteed to keep working after an upgrade (I have no idea whether what I had put together still works); and I never figured out a way to have the tasks that interrogated the API work reliably without either running as a user who could authenticate to VisualCron with high (admin) privileges via Active Directory integration...or storing the credentials of a VisualCron admin-privileged user unencrypted. There were a couple of ways around that I was convinced ought to work, but I never got them to.
If you don't have many jobs that need to be run once IN ADVANCE when you have to do this, or that use event triggers with the "run even if server off" setting, and you DO have all the appropriate jobs set to run once at start if missed, you might find it much simpler to stop the VisualCron service instead of using the Server On/Off toggle. I think that would make the "run once if missed" work.
If that doesn't help, I think you need to reach out to what's left of customer support by email. VisualCron has currently given up so thoroughly on making this forum useful and not just a playground for spambots that they even changed the URL to it and took it out of the site navigation...