Launchd to only run on schedule, not restart?
You will need a add a "Run at Load" key and set it to false.
<key>RunAtLoad</key>
<false/>
This will prevent running at startup and only at your manually specified time.
Thanks everyone just got this working! The first answer did work. My issue was that I didn't unload the first launchd .plist even though I deleted the file. It keep remembering it on each restart.
I ended up re imaging two iMacs and tested the launchd .plist with the added command.
Tested with loading it and unloading it to confirm. After countless reboots and adjusting the clock to then test over and over I can confirm its working the way we need it to :)
The computer can restart all it wants but will not run the script until the scheduled time.