[pvr] fix: last watched timestamps won't update after channel switch

As we only update the last watched timestamp of the current playing channel before a successful channel switch is performed we sometimes continue the wrong last watched channel and group.

@opdenkamp or @Jalle19 for a second look.
I guess one way is to remove the const-ness from PerformChannelSwitch() since UpdateLastWatched() will actually modify the object.