### 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
delete[] lpb;
		} break;
		case WT_CSRCHANGE:
		case WT_PROXIMITY: {
			if ((tablet_get_current_driver() == "wintab") && wintab_available && windows[window_id].wtctx) {
				AXIS pressure;
				if (wintab_WTInfo(WTI_DEVICES + windows[window_id].wtlc.lcDevice, DVC_NPRESSURE, &pressure)) {
					windows[window_id].min_pressure = int(pressure.axMin);
					windows[window_id].max_pressure = int(pressure.axMax);
				}
				AXIS orientation[3];
				if (wintab_WTInfo(WTI_DEVICES + windows[window_id].wtlc.lcDevice, DVC_ORIENTATION, &orientation)) {
					windows[window_id].tilt_supported = orientation[0].axResolution && orientation[1].axResolution;
				}
				return 0;
			}
		} break;
		case WT_PACKET: {
			if ((tablet_get_current_driver() == "wintab") && wintab_available && windows[window_id].wtctx) {
				PACKET packet;
				if (wintab_WTPacket(windows[window_id].wtctx, wParam, &packet)) {
					POINT coords;
					GetCursorPos(&coords);
					ScreenToClient(windows[window_id].hWnd, &coords);
					windows[window_id].last_pressure_update = 0;
					float pressure = float(packet.pkNormalPressure - windows[window_id].min_pressure) / float(windows[window_id].max_pressure - windows[window_id].min_pressure);
					double azim = (packet.pkOrientation.orAzimuth / 10.0f) * (Math_PI / 180);
					double alt = Math::tan((Math::abs(packet.pkOrientation.orAltitude / 10.0f)) * (Math_PI / 180));
					bool inverted = packet.pkStatus & TPS_INVERT;
					Vector2 tilt = (windows[window_id].tilt_supported) ? Vector2(Math::atan(Math::sin(azim) / alt), Math::atan(Math::cos(azim) / alt)) : Vector2();