### Godot version

v4.0 rc6

### System information

Windows 10

### Issue description

When using a ViewportTexture from a SubViewport on a TextureRect, it throws errors after running the scene once and then switching scenes in the editor.
![Pasted image 20230227212626](https://user-images.githubusercontent.com/44676282/221680047-984fa03e-33d1-4856-9a7f-1700b28423cf.png)


### Steps to reproduce

Run the canvas-scene once.
Switch to another scene in the editor.
Switch back to the canvas-scene

### Minimal reproduction project

[ViewportTextureError.zip](https://github.com/godotengine/godot/files/10844099/ViewportTextureError.zip)

uint64_t event_count = 0;
	void _process_dirty_canvas_parent_orders();
protected:
	void _set_size(const Size2i &p_size, const Size2i &p_size_2d_override, bool p_allocated);
	Size2i _get_size() const;
	Size2i _get_size_2d_override() const;
	bool _is_size_allocated() const;
	void _notification(int p_what);
	void _process_picking();
	static void _bind_methods();
public:
	void canvas_parent_mark_dirty(Node *p_node);
	uint64_t get_processed_events_count() const { return event_count; }