### Godot version

4.2.dev3

### System information

Windows 10

### Issue description

Testing 4.2 dev 3, when I resize a BoxShape3D (as seen in https://github.com/godotengine/godot/pull/71092) , the position of the BoxShape moves as well. If the parent of the BoxShape3D is located at (0,0,0), then the BoxShape resizes (but doesn't move) as expected.
If the parent of the BoxShape3D is not (0,0,0), resizing the shape sees the position change unexpectedly.

Resize works as expected if the parent node is at (0,0,0)
Resize works correctly if you edit the size values in the inspector, it's only grabbing the handles with the mouse that causes the position to change.


### Steps to reproduce

Create a new 3D scene.
Move the Node3D root to any location (eg. (1,0,1))
Create a CollisionShape3D child of the Node3D
Configure the CollisionShape3D as a BoxShape3D
Pull any of the grab handles to resize the Box
The Box will move as well as resize when it should only resize


### Minimal reproduction project

![boxshape-resize](https://github.com/godotengine/godot/assets/5151242/64379566-83b8-4da3-b61c-9bae95bb26ea)

aabb.get_edge(i, a, b);
			lines.push_back(a);
			lines.push_back(b);
		}
		Vector<Vector3> handles;
		for (int i = 0; i < 3; i++) {
			Vector3 ax;
			ax[i] = bs->get_size()[i] / 2;
			handles.push_back(ax);
			handles.push_back(-ax);
		}
		p_gizmo->add_lines(lines, material);
		p_gizmo->add_collision_segments(lines);
		p_gizmo->add_handles(handles, handles_material);
	}
	if (Object::cast_to<CapsuleShape3D>(*s)) {
		Ref<CapsuleShape3D> cs2 = s;
		float radius = cs2->get_radius();
		float height = cs2->get_height();
		Vector<Vector3> points;
		Vector3 d(0, height * 0.5 - radius, 0);
		for (int i = 0; i < 360; i++) {
			float ra = Math::deg_to_rad((float)i);
			float rb = Math::deg_to_rad((float)i + 1);
			Point2 a = Vector2(Math::sin(ra), Math::cos(ra)) * radius;
			Point2 b = Vector2(Math::sin(rb), Math::cos(rb)) * radius;
			points.push_back(Vector3(a.x, 0, a.y) + d);
			points.push_back(Vector3(b.x, 0, b.y) + d);
			points.push_back(Vector3(a.x, 0, a.y) - d);
			points.push_back(Vector3(b.x, 0, b.y) - d);