### Godot version

4.1.beta3

### System information

Godot v4.1.beta3 - macOS 13.2.1 - Vulkan (Forward+) - dedicated AMD Radeon Pro 580 - Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz (8 Threads)

### Issue description

When baking the mesh in GDScript after placing a Node3D (StaticBody3D with CollisionShape3D) these error message are displayed:

```
E 0:00:02:0733   update_polygons: Navigation map synchronization error. Attempted to update a navigation region with a navigation mesh that uses a different `cell_height` than the `cell_height` set on the navigation map.
  <C++ Source>   modules/navigation/nav_region.cpp:114 @ update_polygons()

E 0:00:19:0007   sync: Navigation map synchronization error. Attempted to merge a navigation mesh polygon edge with another already-merged edge. This is usually caused by crossing edges, overlapping polygons, or a mismatch of the NavigationMesh / NavigationPolygon baked 'cell_size' and navigation map 'cell_size'.
  <C++ Source>   modules/navigation/nav_map.cpp:770 @ sync()
```


**In Godot v4.1.beta2 it worked,** i.e. no error message

### Steps to reproduce

GDScript:
```
@onready var _navigationRegion3D: NavigationRegion3D = %NavigationRegion3D

:

_navigationRegion3D.bake_navigation_mesh(false)
```

Properties NavigationRegion3D:
<img width="434" alt="CleanShot 2023-06-22 at 19 15 44@2x" src="https://github.com/godotengine/godot/assets/1539838/30410b5f-99f1-40a4-82d4-2d6d66f673d5">


### Minimal reproduction project

[RTS 3D BakeIssue.zip](https://github.com/godotengine/godot/files/11839898/RTS.3D.BakeIssue.zip)

#ifdef MODULE_CSG_ENABLED
#include "modules/csg/csg_shape.h"
#endif
#ifdef MODULE_GRIDMAP_ENABLED
#include "modules/gridmap/grid_map.h"
#endif
NavigationMeshGenerator *NavigationMeshGenerator::singleton = nullptr;
void NavigationMeshGenerator::_add_vertex(const Vector3 &p_vec3, Vector<float> &p_vertices) {
	p_vertices.push_back(p_vec3.x);
	p_vertices.push_back(p_vec3.y);
	p_vertices.push_back(p_vec3.z);
}
void NavigationMeshGenerator::_add_mesh(const Ref<Mesh> &p_mesh, const Transform3D &p_xform, Vector<float> &p_vertices, Vector<int> &p_indices) {
	int current_vertex_count;
	for (int i = 0; i < p_mesh->get_surface_count(); i++) {
		current_vertex_count = p_vertices.size() / 3;
		if (p_mesh->surface_get_primitive_type(i) != Mesh::PRIMITIVE_TRIANGLES) {
			continue;
		}
		int index_count = 0;
		if (p_mesh->surface_get_format(i) & Mesh::ARRAY_FORMAT_INDEX) {
			index_count = p_mesh->surface_get_array_index_len(i);
		} else {
			index_count = p_mesh->surface_get_array_len(i);
		}
		ERR_CONTINUE((index_count == 0 || (index_count % 3) != 0));
		int face_count = index_count / 3;
		Array a = p_mesh->surface_get_arrays(i);
		ERR_CONTINUE(a.is_empty() || (a.size() != Mesh::ARRAY_MAX));
		Vector<Vector3> mesh_vertices = a[Mesh::ARRAY_VERTEX];