You likely have a signal issue in your home or in your neighbourhood. If the return signal from your box(es) is not good, then the head end won't/can't send out your desired programme. The fact that the box(es) froze, also indicates a signal issue. Call Rogers and have them check the signal at your boxes and in your neighbourhood. Here's a post discussing signal issues, which are the cause of many problems. You can also check the signal at the box yourself using the link.
This, of course, does nothing if an episode is missing in the on-demand selection. I have, however, also occasionally found that one bunch of episodes is in one location and another episode is in another location (and I thought it was missing). The Rogers person who put in the one episode didn't put it in the same place and it ended up a the bottom of a list, or in another place due to alphabetical sorting, etc.
Just started watching the episode of good witch on demand and after 25 minutes of the show it started playing the scenes over again. Of course because I do not have a pvr I could not fast forward. Can't wait until I can get bell fibe!