### Godot version

Godot v4.2.stable 

### System information

Windows 10.0.22631 - Vulkan (Forward+) - dedicated AMD Radeon RX 7900 XTX (Advanced Micro Devices, Inc.; 31.0.22023.1014) - AMD Ryzen 7 7800X3D 8-Core Processor (16 Threads)

### Issue description

When you disable `current` on a Camera3D, the first available Camera3D in the scene will have it's `current` property set to true.

### Steps to reproduce

Add 2 Camera3D nodes to a scene, note both have `current` disabled.
Enable and disable `current` on one Camera3D.
After `current` is disabled on one Camera3D, the other Camera3D has it's `current` property set to true

### Minimal reproduction project

[minimal.zip](https://github.com/godotengine/godot/files/13522846/minimal.zip)

if (is_current()) {
					clear_current();
					current = true; 
				} else {
					current = false;
				}
			}
			if (viewport) {
#ifdef TOOLS_ENABLED
				if (Engine::get_singleton()->is_editor_hint()) {
					viewport->disconnect(SNAME("size_changed"), callable_mp((Node3D *)this, &Camera3D::update_gizmos));
				}
#endif
				viewport->_camera_3d_remove(this);
				viewport = nullptr;
			}
		} break;
		case NOTIFICATION_BECAME_CURRENT: {
			if (viewport) {
				viewport->find_world_3d()->_register_camera(this);
			}
		} break;
		case NOTIFICATION_LOST_CURRENT: {
			if (viewport) {
				viewport->find_world_3d()->_remove_camera(this);
			}
		} break;
	}
}
Transform3D Camera3D::get_camera_transform() const {