[Mac] CursorVisible should only apply when changed

This fixes an issue where `NativeWindow.Dispose()` would move the mouse
cursor.