### Godot version

4.2.dev [6588a4a]

### System information

N/A

### Issue description

While using `Button`s and when setting `text_overrun_behavior` to anything that adds ellipsis, they are drawn completely ignoring the outline values of the text. `Label` is able to do it correctly:

![image](https://github.com/godotengine/godot/assets/30739239/5154c841-479e-478b-aaa5-7b2e61876bed)

### Steps to reproduce

Create a `Button` and set `text_overrun_behavior` to anything that has ellipsis in it.

### Minimal reproduction project

N/A, trivially reproducible.
TextServer::Orientation orientation = shaped_text_get_orientation(p_shaped);
	bool rtl = (shaped_text_get_inferred_direction(p_shaped) == DIRECTION_RTL);
	int ellipsis_pos = shaped_text_get_ellipsis_pos(p_shaped);
	int trim_pos = shaped_text_get_trim_pos(p_shaped);
	const Glyph *ellipsis_glyphs = shaped_text_get_ellipsis_glyphs(p_shaped);
	int ellipsis_gl_size = shaped_text_get_ellipsis_glyph_count(p_shaped);
	int v_size = shaped_text_get_glyph_count(p_shaped);
	const Glyph *glyphs = shaped_text_get_glyphs(p_shaped);
	Vector2 ofs = p_pos;
	
	if (rtl && ellipsis_pos >= 0) {
		for (int i = ellipsis_gl_size - 1; i >= 0; i--) {
			for (int j = 0; j < ellipsis_glyphs[i].repeat; j++) {
				font_draw_glyph(ellipsis_glyphs[i].font_rid, p_canvas, ellipsis_glyphs[i].font_size, ofs + Vector2(ellipsis_glyphs[i].x_off, ellipsis_glyphs[i].y_off), ellipsis_glyphs[i].index, p_color);
				if (orientation == ORIENTATION_HORIZONTAL) {
					ofs.x += ellipsis_glyphs[i].advance;
				} else {
					ofs.y += ellipsis_glyphs[i].advance;
				}
			}
		}
	}
	
	for (int i = 0; i < v_size; i++) {
		if (trim_pos >= 0) {
			if (rtl) {
				if (i < trim_pos) {