WXSIM should actually be *running* when you told it to (as it's using the computer's clock and will execute within 2 or 3 seconds of the start of the assigned minute). Generally, the best time to have it actually run is about 12-15 minutes after the hour, after WXSIM has just run (recommended time about 8-10 minutes after the hour). Running it right on the hour is a bad idea, as you will be missing most of the hourly surface data, and then it may have to default back to data from around the top of the previous hour.
I think what you are referring to is the (internal) forecast initialization time, which is what will show in the forecast data. The best way to troubleshoot this is to have a good understanding of the decision tree WXSIM goes through in determining this:
(1) When WXSIM is first booted up, the time (which you can see in the box at the upper left part of the program), is straight off the computer's clock.
(2) You can change this manually, if you like. However, if you're running auto mode, you usually won't be there, so that's not the issue in this case.
(3) When you import data (from wdata.txt, made a few minutes earlier by WXSIMATE, using data downloaded from the internet), WXSIM will look for METAR data (or synoptic, if you choose, but that's not generally recommended in North America) in wdata.txt - for your assigned "home" site. If it finds it, it will put that time in the box. You can tell it's from METAR data, because it will end with "Z", and will show as a UTC (GMT) time. Note that, in WXSIMATE, you have some control over what to do if it finds multiple entries. Sometimes it amy be good to check "First instance only", which is usually close to the top of the hour. You should certainly be doing this step in auto run, by having "Import data before run" checked.
(4) If you have a home weather station you want to use with the WXSIM, you need to have WXSIMATE importing that local station data (check this under Schedule in WXSIMATE), which it then saves in localdat.txt, where you can see the station time near the top of that data file. WXSIMATE also gives you some optins, under Customize, for whether to have the data be 0 or 5 minutes before the hour (it goes back to the most recent hour, unless you manually override this). In your case, it sounds like you would want 0 checked. You also need to have 'Import local station data' checked under Auto Run in WXSIM.
Given what you said, about various different times (relative to the hour) being used as forecast initialization times, my first guess is that you are importing METAR, and it comes from a variety of times because you don't have "first instance only" checked in WXSIMATE, and it's picking up interim reports sometimes. I just checked and see that Canadian METAR sites often do report on the hour, but many, including automated sites) report at other times as well. Ironically, by trying to run WXSIM exactly on the hour, you are greatly DEcreasing the likelihood of catching an on-the-hour METAR, because there's no way the most recent one would have had time to post (takes a few minutes to report and get uploaded to these big files), and you would very likely be picking up interim reports at odd times instead.
Let me know what you are actually importing: internet data, local station data, or both. In any case, you have to run WXSIM at least 5 minutes after the hour to get useful on-the-hour data.
I hope that makes sense!