If I switch channels via a programmed zap event, it does not seem to register with the system. It does switch channels but the switch does not register in the last scanned forward/back buttons or in the single epg etc.

Another example, try this,
1. Program a zap,
2. When it happens, press arrow down on the D pad, you will see that the single channel EPG thinks you are still on the previous channel.