I think I’ve realized what the issue was an hope to have resolved it. I’ve validated this latest fix with a configuration such as yours (server in UTC and client in New_York). The problem was that both UTC and non-UTC times could end up in the configuration file. The change I had made in the previous build was to convert to UTC no matter what but that’s not good enough really threw off the scheduling.
Now, it’s more intelligent about what it reads from the schedules.ps1. PSU will always write the date and time as UTC but can handle non-UTC times as well and will convert them to the specified time zone.
I’m also taking advantage of the Nodatime library rather than the built in .NET DateTime\TimeZoneInfo types because they are notoriously hard to use.
I’ve run another nightly build. If you have time, feel free to test it out. https://imsreleases.z19.web.core.windows.net/