### 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
dpad_val.set_flag(HatMask::LEFT);
	} else if (p_dpad == 31500) {
		dpad_val.set_flag(HatMask::LEFT);
		dpad_val.set_flag(HatMask::UP);
	}
	input->joy_hat(p_device, dpad_val);
}
float JoypadWindows::axis_correct(int p_val, bool p_xinput, bool p_trigger, bool p_negate) const {
	if (Math::abs(p_val) < MIN_JOY_AXIS) {
		return p_trigger ? -1.0f : 0.0f;
	}
	if (!p_xinput) {
		return (float)p_val / MAX_JOY_AXIS;
	}
	if (p_trigger) {
		
		return 2.0f * p_val / MAX_TRIGGER - 1.0f;
	}
	float value;
	if (p_val < 0) {
		value = (float)p_val / MAX_JOY_AXIS;
	} else {
		value = (float)p_val / (MAX_JOY_AXIS - 1);
	}
	if (p_negate) {
		value = -value;
	}
	return value;
}
void JoypadWindows::joypad_vibration_start_xinput(int p_device, float p_weak_magnitude, float p_strong_magnitude, float p_duration, uint64_t p_timestamp) {