### Godot version

Master (4.2)

### System information

Windows 11 - Vulkan - Nvidia RTX 4070 - intel i5 13600KF

### Issue description

As you can see in the video when you try to add multiple scenes in to the 3D viewport (only with multiple scenes) the editor throws this error.

```
ERROR: Can't add child '@Node3D@18837' to '@SubViewport@9274', already has a parent '@SubViewport@9274'.
   at: (scene\main\node.cpp:1411)
```


Video: https://youtu.be/BVcCIigQJDw

This happens in the latest master (pulled on 2.11.2023).

### Steps to reproduce

Drag couple of the 3d mesh scenes into the 3D viewport and then select multiple scenes and drag them over and observer the error.

### Minimal reproduction project

[TestSceneDragAndDrop.zip](https://github.com/godotengine/godot/files/13253741/TestSceneDragAndDrop.zip)

return; /
	}
	bool orthogonal = camera->get_projection() == Camera3D::PROJECTION_ORTHOGONAL;
	Vector<Color> grid_colors[3];
	Vector<Vector3> grid_points[3];
	Vector<Vector3> grid_normals[3];
	Color primary_grid_color = EDITOR_GET("editors/3d/primary_grid_color");
	Color secondary_grid_color = EDITOR_GET("editors/3d/secondary_grid_color");
	int grid_size = EDITOR_GET("editors/3d/grid_size");
	int primary_grid_steps = EDITOR_GET("editors/3d/primary_grid_steps");
	/
	grid_enable[0] = grid_visible[0] = EDITOR_GET("editors/3d/grid_xy_plane");
	grid_enable[1] = grid_visible[1] = EDITOR_GET("editors/3d/grid_yz_plane");
	grid_enable[2] = grid_visible[2] = EDITOR_GET("editors/3d/grid_xz_plane");
	/
	/
	real_t division_level_bias = EDITOR_GET("editors/3d/grid_division_level_bias");
	/
	int division_level_max = EDITOR_GET("editors/3d/grid_division_level_max");
	/
	int division_level_min = EDITOR_GET("editors/3d/grid_division_level_min");
	ERR_FAIL_COND_MSG(division_level_max < division_level_min, "The 3D grid's maximum division level cannot be lower than its minimum division level.");
	if (primary_grid_steps != 10) { /
		/
		real_t div = Math::log((real_t)primary_grid_steps) / (real_t)2.302585092994045901094;
		/
		division_level_max = (int)(division_level_max / div);
		division_level_min = (int)(division_level_min / div);
	}
	for (int a = 0; a < 3; a++) {