I thought it was just simpler than that. The act of front-paging only implicitly approves a node. The approval is not actually stored - when gathering a list of nodes that are approved, I'm guessing PM will just look at any node that is either approved or front-paged (and, as perl programmers, we know that $a or $b is true even when $a and $b are both individually true).
I noticed this when I had two windows opened to the same thread. In the first window, I had opened the second window as a response. Once I finished the response, I used the second window to view the whole thread again, and noticed it was front-paged by someone. On the first window, I clicked "approve", and hit moderate. It accepted my moderation, and the node showed "approved by Tanktalus" and "front-paged by someone else".
I dunno. I thought it was funny. :-)