> we should try to understand why refreshRendering is called twice on each property change
I agree. In fact, it happens every time there is an invalidation. Whether there is one or more properties involved.