WLROOTS compositors don't run surface leave callbacks, while this may be considered a bug in WLROOTS, neither GTK/SDL crash so workaround the crash too. This also fixes a minor glitch where the cursor scale wasn't updated when changing monitor scale at run-time.