Detecting commercials (and anything else) based on probable events like the volume going up (and not all commercials are necessarily loud) just won't cut it when it comes to recording something as important as a TV show, where you can't "undo" a mistake. Even if it works perfectly 19 times out of 20, that 20th time where it stopped recording because the loud scream or gun shot got mistaken for a commercial will make you stop using it out of frustration.
What's needed is a fundamental change in the signal itself, and that can vary from one TV station to the next. I remember reading something a long time ago where commercials were normally recorded in mono sound, so you could assume that a switch from stereo to mono sound was a commercial break. But now stereo is so common that I'm sure commercials must also be stereo by now.
My thinking is that if it hasn't been done reliably by now, its because its not a simple thing to do.