Since virtual channels are designed to mimic traditional live channels, it is supposed behave the way you described because that is exactly how a traditional live channel would function. Basically once a virtual channel is first generated you are at the mercy of that initial real-time “playlist”.
For example if you were watching the real live BBC America Dr. Who marathon that comes on around the holidays and you stopped watching around S01E05 and then returned 14 hours later you would end up resuming around S02E04. This is the exact behavior that virtual channels are supposed to replicate.
The watched condition available in virtual channels comes in to play only when the virtual channel is generated, by either only allowing watched episodes or excluding watched episodes. Virtual channels do not regenerate in real-time.