How can I toggle polygon's perPositionHeight properly when hierarchy has CallbackProperty?

Hi, I want Polygon toggle perPositionHeight when hierarchy has CallbackProperty.

But when I change the boolean value of perPositionHeight, the previous polygon rendering is not removed.

Here is a Sandcastle implementation of a similar situation.
The hierarchy’s CallbackProperty’s isCostant cannot be true in production situation.

After some testing, I temporarily solved it with Promise, but I don’t understand perPositionHeight very well and I might have set the structure of the polygon incorrectly, so if you have a better way, I’d appreciate it.