### Godot version

3.5.2 stable, 3.6 beta 1

### System information

Windows 11, all amd system, GLES3

### Issue description

Printed output says that the controller is in fact two controllers:
```
XInput Gamepad
Bluetooth LE XINPUT compatible input device
```
controllers of other makes only report as a single device (tested with nintendo pro controller, dual sense, steam deck)

Tested controllers:
- xbox elite controller
- xbox one s
- ~~haven't tested with xbox series controller, will report back when i have~~ Xbox series *(pink)* works fine

Effect:
- on a fresh new project it seems that the issue is only that the gamepad is reported as two
- in a project we are working on in godot 3.5.2, the double sent events propagate into the game (skips a button when going up for instance)

I am aware of https://github.com/godotengine/godot/issues/41684 and https://github.com/godotengine/godot/pull/71784 which mentions that a fix had been cherry picked, in my testing however the issue remains.

### Steps to reproduce

- create a simple ui scene with a couple of buttons
- add a script that prints the device name using: `print(Input.get_joy_name(event.device))` when event is InputEventJoypadButton in the _input function
- run the game and press a button on a bluetooth connected xbox gamepad

### Minimal reproduction project

N/A
prop_range.diph.dwObj = ob->dwType;
		prop_range.diph.dwHow = DIPH_BYID;
		prop_range.lMin = -MAX_JOY_AXIS;
		prop_range.lMax = +MAX_JOY_AXIS;
		dinput_gamepad &joy = d_joypads[p_joy_id];
		res = IDirectInputDevice8_SetProperty(joy.di_joy, DIPROP_RANGE, &prop_range.diph);
		if (FAILED(res)) {
			return;
		}
		dilong.diph.dwSize = sizeof(dilong);
		dilong.diph.dwHeaderSize = sizeof(dilong.diph);
		dilong.diph.dwObj = ob->dwType;
		dilong.diph.dwHow = DIPH_BYID;
		dilong.dwData = 0;
		res = IDirectInputDevice8_SetProperty(joy.di_joy, DIPROP_DEADZONE, &dilong.diph);
		if (FAILED(res)) {
			return;
		}
		joy.joy_axis.push_back(ofs);
	}
}
BOOL CALLBACK JoypadWindows::enumCallback(const DIDEVICEINSTANCE *p_instance, void *p_context) {
	JoypadWindows *self = static_cast<JoypadWindows *>(p_context);
	if (self->is_xinput_device(&p_instance->guidProduct)) {
		return DIENUM_CONTINUE;
	}
	self->setup_dinput_joypad(p_instance);
	return DIENUM_CONTINUE;
}
BOOL CALLBACK JoypadWindows::objectsCallback(const DIDEVICEOBJECTINSTANCE *p_instance, void *p_context) {