### Godot version

4.2.dev3

### System information

Godot v4.2.dev3 - Arch Linux #0~20230811.g489fabdc SMP PREEMPT_DYNAMIC Sat Aug 12 02:04:20 UT - X11 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1650 (nvidia; 535.98) - Intel(R) Core(TM) i5-9300H CPU @ 2.40GHz (8 Threads)

### Issue description

After turning on 2d hdr and font msdf at the same time, there is a problem with ui text rendering.

2d hdr off:
![图片](https://github.com/godotengine/godot/assets/52148221/37074fde-a0ce-4d3f-8bfc-dcf3f910cb12)
2d hdr on:
![图片](https://github.com/godotengine/godot/assets/52148221/b858899c-e08f-4bac-b0d6-4385d9a46114)


### Steps to reproduce

1. Open msdf for default font or custom font.
2. Turn on 2d hdr.
3. Add a Label node and enter text, the text rendering is destroyed.

### Minimal reproduction project

N/A
push_constant.dst_rect[3] = dst_rect.size.height;
				RD::get_singleton()->draw_list_set_push_constant(p_draw_list, &push_constant, sizeof(PushConstant));
				RD::get_singleton()->draw_list_bind_index_array(p_draw_list, shader.quad_index_array);
				RD::get_singleton()->draw_list_draw(p_draw_list, true);
			} break;
			case Item::Command::TYPE_NINEPATCH: {
				const Item::CommandNinePatch *np = static_cast<const Item::CommandNinePatch *>(c);
				
				{
					RID pipeline = pipeline_variants->variants[light_mode][PIPELINE_VARIANT_NINEPATCH].get_render_pipeline(RD::INVALID_ID, p_framebuffer_format);
					RD::get_singleton()->draw_list_bind_render_pipeline(p_draw_list, pipeline);
				}
				
				_bind_canvas_texture(p_draw_list, np->texture, current_filter, current_repeat, last_texture, push_constant, texpixel_size);
				Rect2 src_rect;
				Rect2 dst_rect(np->rect.position.x, np->rect.position.y, np->rect.size.x, np->rect.size.y);
				if (np->texture == RID()) {
					texpixel_size = Size2(1, 1);
					src_rect = Rect2(0, 0, 1, 1);
				} else {
					if (np->source != Rect2()) {
						src_rect = Rect2(np->source.position.x * texpixel_size.width, np->source.position.y * texpixel_size.height, np->source.size.x * texpixel_size.width, np->source.size.y * texpixel_size.height);
						push_constant.color_texture_pixel_size[0] = 1.0 / np->source.size.width;
						push_constant.color_texture_pixel_size[1] = 1.0 / np->source.size.height;
					} else {
						src_rect = Rect2(0, 0, 1, 1);
					}
				}
				Color modulated = np->color * base_color;
				if (use_linear_colors) {