### Godot version

4.0.beta12

### System information

Windows 11, RTX 3080

### Issue description

When a Window Node is created with it's Transparent flag set to true and Project Settings --> Display --> Window --> Subwindows --> Embed Subwindows is false, the Window has a black background. By cycling the transparent flag from false and back to true again, during runtime, the window's background then becomes transparent. 

### Steps to reproduce

Attempt to create a Non-embedded Subwindow with a transparent background using the appropriate flags. 

### Minimal reproduction project

Note: this project is from Reddit user [gongpha](https://www.reddit.com/user/gongpha/) and his Reddit post [Learning a Godot 4.0 Window node](https://www.reddit.com/r/godot/comments/xr8yxn/learning_a_godot_40_window_node/)

https://github.com/gongpha/godot4-window-test
_send_window_event(windows[window_id], WINDOW_EVENT_MOUSE_EXIT);
			} else if (window_mouseover_id != INVALID_WINDOW_ID && windows.has(window_mouseover_id)) {
				
				
				track_mouse_leave_event(windows[window_mouseover_id].hWnd);
			}
		} break;
		case WM_INPUT: {
			if (mouse_mode != MOUSE_MODE_CAPTURED || !use_raw_input) {
				break;
			}
			UINT dwSize;
			GetRawInputData((HRAWINPUT)lParam, RID_INPUT, nullptr, &dwSize, sizeof(RAWINPUTHEADER));
			LPBYTE lpb = new BYTE[dwSize];
			if (lpb == nullptr) {
				return 0;
			}
			if (GetRawInputData((HRAWINPUT)lParam, RID_INPUT, lpb, &dwSize, sizeof(RAWINPUTHEADER)) != dwSize) {
				OutputDebugString(TEXT("GetRawInputData does not return correct size !\n"));
			}
			RAWINPUT *raw = (RAWINPUT *)lpb;
			if (raw->header.dwType == RIM_TYPEMOUSE) {
				Ref<InputEventMouseMotion> mm;
				mm.instantiate();
				mm->set_window_id(window_id);
				mm->set_ctrl_pressed(control_mem);
				mm->set_shift_pressed(shift_mem);
				mm->set_alt_pressed(alt_mem);
				mm->set_pressure((raw->data.mouse.ulButtons & RI_MOUSE_LEFT_BUTTON_DOWN) ? 1.0f : 0.0f);
				mm->set_button_mask(last_button_state);