For anyone that needs it, the bat file to shift your active hours is a workable solution, but it does open the command prompt every hour for a split second, which is kind of irritating. To stop the window from showing up, you can wrap the bat file in a VBS script that runs it in a hidden shell.
Create a file next to your bat file ending in a ".vbs" extension, and add this logic:
Set oShell = WScript.CreateObject ("WScript.Shell")
oShell.run "C:\PATH\TO\YOUR\BAT\FILE\update_active_hours.bat", 0
Make sure you update the path to the bat file and use double backslashes.
Next, in your scheduled task, edit it so that it runs:
"C:\Windows\System32\wscript.exe"
With the argument of:
"C:\PATH\TO\YOUR\BAT\FILE\launch_update_active_hours.vbs"
Someone could take the time to actually put the entire bat files contents into the VBS script so you'd only need one file, but this works fine. Additionally, you may need to enable vbscript for this to work.