Demo recording is based on the same code that is used in network. That's the way it is most often done. Now that games have become very complex, network code has a lot of tricks used in it where it _looks_ correct, but in fact it looks different on each client. You don't notice this in network as everything is going on very quickly, people expect to see some lags and correction in network and you can't look from other people's viewpoint. In demo playback, local prediction is not feasible, you can replay the same thing over and over and notice it is not always the same, and if something is just a bit off, it is immediately tagged as a bug which suddenly becomes a very important problem to fix. Attempts to fix all those where taking a lot of time. Plus, some of the cases were hopeless - e.g. ragdolls are completely local and never synchronized as they would take a lot of data to store per frame. Same as for a lot of blood effects, particles, etc.
Long story short - maintaining that feature was not feasible for us with our head count and time budget. Sorry.