### Godot version

4.0 beta 10

### System information

Mac M1, MacOS Ventura 13.0.1

### Issue description

This has been happening with all the 4.0 betas, and it's only happening on the Mac. When I start Godot and am presented with the Project Manager, the UI text is always black. Even on the "about" box.

![Screenshot 2022-12-28 at 2 49 46 PM](https://user-images.githubusercontent.com/786744/209870865-222a47c6-c19d-4be5-bee5-6a3b5191d9c9.png)

If I open a project, the text color is shown correctly. Note that the "about" box text is also fixed.

![Screenshot 2022-12-28 at 2 50 24 PM](https://user-images.githubusercontent.com/786744/209871082-5a48c7d6-2396-42f1-b509-2077ec3be617.png)

If, at this point, I tell Godot to return to the Project Manager, the black text reappears.

### Steps to reproduce

It's just doing this from a cold start, so there aren't any steps.

### Minimal reproduction project

N/A
normal_transform.columns[0].normalize();
		normal_transform.columns[1].normalize();
		normal_transform.columns[2] = Vector2();
		_update_transform_2d_to_mat4(normal_transform, state_buffer.canvas_normal_transform);
		state_buffer.canvas_modulate[0] = p_modulate.r;
		state_buffer.canvas_modulate[1] = p_modulate.g;
		state_buffer.canvas_modulate[2] = p_modulate.b;
		state_buffer.canvas_modulate[3] = p_modulate.a;
		Size2 render_target_size = texture_storage->render_target_get_size(p_to_render_target);
		state_buffer.screen_pixel_size[0] = 1.0 / render_target_size.x;
		state_buffer.screen_pixel_size[1] = 1.0 / render_target_size.y;
		state_buffer.time = state.time;
		state_buffer.use_pixel_snap = p_snap_2d_vertices_to_pixel;
		state_buffer.directional_light_count = directional_light_count;
		Vector2 canvas_scale = p_canvas_transform.get_scale();
		state_buffer.sdf_to_screen[0] = render_target_size.width / canvas_scale.x;
		state_buffer.sdf_to_screen[1] = render_target_size.height / canvas_scale.y;
		state_buffer.screen_to_sdf[0] = 1.0 / state_buffer.sdf_to_screen[0];
		state_buffer.screen_to_sdf[1] = 1.0 / state_buffer.sdf_to_screen[1];
		Rect2 sdf_rect = texture_storage->render_target_get_sdf_rect(p_to_render_target);
		Rect2 sdf_tex_rect(sdf_rect.position / canvas_scale, sdf_rect.size / canvas_scale);
		state_buffer.sdf_to_tex[0] = 1.0 / sdf_tex_rect.size.width;
		state_buffer.sdf_to_tex[1] = 1.0 / sdf_tex_rect.size.height;
		state_buffer.sdf_to_tex[2] = -sdf_tex_rect.position.x / sdf_tex_rect.size.width;
		state_buffer.sdf_to_tex[3] = -sdf_tex_rect.position.y / sdf_tex_rect.size.height;
		state_buffer.tex_to_sdf = 1.0 / ((canvas_scale.x + canvas_scale.y) * 0.5);
		glBindBufferBase(GL_UNIFORM_BUFFER, BASE_UNIFORM_LOCATION, state.canvas_instance_data_buffers[state.current_buffer].state_ubo);
		glBufferData(GL_UNIFORM_BUFFER, sizeof(StateBuffer), &state_buffer, GL_STREAM_DRAW);
		GLuint global_buffer = material_storage->global_shader_parameters_get_uniform_buffer();
		glBindBufferBase(GL_UNIFORM_BUFFER, GLOBAL_UNIFORM_LOCATION, global_buffer);