The reason for keeping track of parents is to know the true screen coordinates of the embedded window, which is necessary for instance to show the popup menu at the right position.
Handling ConfigureNotify on the embedded window is not enough, because if one of the parents is moved the ConfigureNotify only goes to the parent.