When connecting using a specific layout a session is created with a virtual desktop having the the specific client layout, however, if i within the session changes the layout its not updated to the client side and therefore introduces a mismatch in layout. If reconnecting to the session, the layout is reinited of the current client state which can be used to solve the mess created if playing around with the display layout properties within a session.
One solution to this bug is to block changes of layout within a session, this will add some restriction but also save users from major mess up.. The other solution is to send randr updates to the client for updating layout clientside however, there are some bug problems to solve here, eg. client does have restrictions, while xvnc does not etc.