### 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.
return interfaces.size();
}
Ref<TextServer> TextServerManager::get_interface(int p_index) const {
	ERR_FAIL_INDEX_V(p_index, interfaces.size(), nullptr);
	return interfaces[p_index];
}
Ref<TextServer> TextServerManager::find_interface(const String &p_name) const {
	int idx = -1;
	for (int i = 0; i < interfaces.size(); i++) {
		if (interfaces[i]->get_name() == p_name) {
			idx = i;
			break;
		};
	};
	ERR_FAIL_COND_V_MSG(idx == -1, nullptr, "Interface not found.");
	return interfaces[idx];
}
TypedArray<Dictionary> TextServerManager::get_interfaces() const {
	TypedArray<Dictionary> ret;
	for (int i = 0; i < interfaces.size(); i++) {
		Dictionary iface_info;
		iface_info["id"] = i;
		iface_info["name"] = interfaces[i]->get_name();
		ret.push_back(iface_info);
	};
	return ret;
}
void TextServerManager::set_primary_interface(const Ref<TextServer> &p_primary_interface) {