### Godot version

Godot Engine v4.0.stable.official.92bee43ad

### System information

Windows 10

### Issue description

The documentation states that passing ```null``` into the image parameter of ```set_custom_mouse_cursor``` will change it back to the system cursor, however I find that it removes the cursor's image entirely, rather than setting it to the system's cursor.


### Steps to reproduce

```var isimage = false
var theimage = load("res://final.png")

func _on_my_button_pressed():
    if isimage == false:
        Input.set_custom_mouse_cursor(theimage, Input.CURSOR_ARROW, Vector2(16,16))
        isimage = true
        
    else:
        Input.set_custom_mouse_cursor(null)
        isimage = false```

When the button is pressed, the cursor is meant to change to the new cursor. When it has been pressed a second time, it changes back to the default cursor. However, upon pressing it a second time, it simply disappears. The cursor becomes visible again when the cursor exits and re-enters the window.

### Minimal reproduction project

[null mouse.zip](https://github.com/godotengine/godot/files/10901969/null.mouse.zip)

KeyMappingWindows::initialize();
	drop_events = false;
	key_event_pos = 0;
	alt_mem = false;
	gr_mem = false;
	shift_mem = false;
	control_mem = false;
	meta_mem = false;
	hInstance = static_cast<OS_Windows *>(OS::get_singleton())->get_hinstance();
	pressrc = 0;
	old_invalid = true;
	mouse_mode = MOUSE_MODE_VISIBLE;
	rendering_driver = p_rendering_driver;
	
	bool tts_enabled = GLOBAL_GET("audio/general/text_to_speech");
	if (tts_enabled) {
		tts = memnew(TTS_Windows);
	}
	
	screen_set_keep_on(GLOBAL_GET("display/window/energy_saving/keep_screen_on"));
	
	OSVERSIONINFOW os_ver;
	ZeroMemory(&os_ver, sizeof(OSVERSIONINFOW));
	os_ver.dwOSVersionInfoSize = sizeof(OSVERSIONINFOW);
	HMODULE nt_lib = LoadLibraryW(L"ntdll.dll");
	if (nt_lib) {
		RtlGetVersionPtr RtlGetVersion = (RtlGetVersionPtr)GetProcAddress(nt_lib, "RtlGetVersion");
		if (RtlGetVersion) {
			RtlGetVersion(&os_ver);
		}