### Godot version

v4.1.1.stable.official [bd6af8e0e]

### System information

Godot v4.1.1.stable - Windows 10.0.22621 - Vulkan (Forward+) - dedicated NVIDIA GeForce RTX 3070 Ti (NVIDIA; 31.0.15.3640) - Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 Threads)

### Issue description

Running the following code causes a memory leak:
```
var tween = get_tree().create_tween()
tween.stop()
queue_free()
```

### Steps to reproduce

1. Create a Tween
2. Use `tween.stop()` 
3. `queue_free()` the Node that created the Tween

### Minimal reproduction project

[TweenMemoryLeak.zip](https://github.com/godotengine/godot/files/12156855/TweenMemoryLeak.zip)

tween = p_tween;
}
void Tweener::clear_tween() {
	tween.unref();
}
void Tweener::_bind_methods() {
	ADD_SIGNAL(MethodInfo("finished"));
}
bool Tween::_validate_type_match(const Variant &p_from, Variant &r_to) {
	if (p_from.get_type() != r_to.get_type()) {
		
		if (p_from.get_type() == Variant::FLOAT && r_to.get_type() == Variant::INT) {
			r_to = double(r_to);
		} else if (p_from.get_type() == Variant::INT && r_to.get_type() == Variant::FLOAT) {
			r_to = int(r_to);
		} else {
			ERR_FAIL_V_MSG(false, "Type mismatch between initial and final value: " + Variant::get_type_name(p_from.get_type()) + " and " + Variant::get_type_name(r_to.get_type()));
		}
	}
	return true;
}
void Tween::_start_tweeners() {