### Godot version

4.1 stable

### System information

Windows 11 64bit

### Issue description

A dynamic `NavigationObstacle2D` with radius > 0 is not displayed properly in editor when setting it to a position other than the origin. The center of the avoidance circle is not at the correct position after switching scenes or hiding/showing the obstacle.

It looks like some transform is applied twice.

### Steps to reproduce

- create an empty 2D scene
- add a `NavigationObstacle2D` and change it's radius to something greater zero
- set it to a position other than the origin
- hide and show the obstacle or switch to another scene and back
- observe that the center of the avoidance circle is not longer at the correct position

### Minimal reproduction project

-
}
				if (is_debug_enabled) {
					_update_fake_agent_radius_debug();
					_update_static_obstacle_debug();
				}
			}
#endif 
		} break;
	}
}
NavigationObstacle2D::NavigationObstacle2D() {
	obstacle = NavigationServer2D::get_singleton()->obstacle_create();
	set_radius(radius);
	set_vertices(vertices);
	set_avoidance_layers(avoidance_layers);
	set_avoidance_enabled(avoidance_enabled);
}
NavigationObstacle2D::~NavigationObstacle2D() {
	ERR_FAIL_NULL(NavigationServer2D::get_singleton());
	NavigationServer2D::get_singleton()->free(obstacle);
	obstacle = RID();
}
void NavigationObstacle2D::set_vertices(const Vector<Vector2> &p_vertices) {
	vertices = p_vertices;
	NavigationServer2D::get_singleton()->obstacle_set_vertices(obstacle, vertices);
	if (is_inside_tree() && (Engine::get_singleton()->is_editor_hint() || get_tree()->is_debugging_navigation_hint())) {
		queue_redraw();
	}
}
void NavigationObstacle2D::set_navigation_map(RID p_navigation_map) {