### 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
glDisable(GL_SCISSOR_TEST);
	glClearColor(0.0, 0.0, 0.0, 0.0);
	glClear(GL_COLOR_BUFFER_BIT);
	CanvasOcclusionShaderGLES3::ShaderVariant variant = CanvasOcclusionShaderGLES3::MODE_SDF;
	bool success = shadow_render.shader.version_bind_shader(shadow_render.shader_version, variant);
	if (!success) {
		return;
	}
	shadow_render.shader.version_set_uniform(CanvasOcclusionShaderGLES3::PROJECTION, Projection(), shadow_render.shader_version, variant);
	shadow_render.shader.version_set_uniform(CanvasOcclusionShaderGLES3::DIRECTION, 0.0, 0.0, shadow_render.shader_version, variant);
	shadow_render.shader.version_set_uniform(CanvasOcclusionShaderGLES3::Z_FAR, 0.0, shadow_render.shader_version, variant);
	LightOccluderInstance *instance = p_occluders;
	while (instance) {
		OccluderPolygon *oc = occluder_polygon_owner.get_or_null(instance->occluder);
		if (!oc || oc->sdf_vertex_array == 0) {
			instance = instance->next;
			continue;
		}
		Transform2D modelview = to_clip * instance->xform_cache;
		shadow_render.shader.version_set_uniform(CanvasOcclusionShaderGLES3::MODELVIEW1, modelview.columns[0][0], modelview.columns[1][0], 0, modelview.columns[2][0], shadow_render.shader_version, variant);
		shadow_render.shader.version_set_uniform(CanvasOcclusionShaderGLES3::MODELVIEW2, modelview.columns[0][1], modelview.columns[1][1], 0, modelview.columns[2][1], shadow_render.shader_version, variant);
		glBindVertexArray(oc->sdf_vertex_array);
		glDrawElements(oc->sdf_is_lines ? GL_LINES : GL_TRIANGLES, oc->sdf_index_count, GL_UNSIGNED_INT, 0);
		instance = instance->next;
	}
	texture_storage->render_target_sdf_process(p_render_target); 
	glBindVertexArray(0);
	glBindFramebuffer(GL_FRAMEBUFFER, 0);
}
RID RasterizerCanvasGLES3::occluder_polygon_create() {