Ok, given your issue fully intrigued numerous people, Smirt, we can confirm....
Was a bug.
If you have the time set in low to high order rather than high to low, (ie 0:00 to 15:00 vs 15:00 to 0:00) then the game engine isn't processing those rules correctly.
JDB has pushed a fix to all versions of the game engine, so bleeding edge and 4.6.