### Godot version

4.1 RC3

### System information

Windows 11 AMD Ryzen 5950x

### Issue description

Actually should be pretty simple, as of commit: https://github.com/godotengine/godot/commit/1c93606e470f0cad5f14af104ccb89a95a89931c

SurfaceTool's add_triangle_fan() maps its parameters like so:
`add_triangle_fan(p_vertices, p_uv2s, p_colors, p_uv2s, p_normals, Variant(p_tangents));`

As you can see its using **p_uv2s** as the 2nd _and_ 4th parameters, and isn't using **p_uvs** at all which ought to be the 2nd parameter. The 2nd parameter at the moment does nothing at all.

As a result I had to change my code from:
`surface_tool.add_triangle_fan(vertices, [uvs[0], uvs[1], uvs[2], uvs[1], uvs[3], uvs[2]])`
To:
`surface_tool.add_triangle_fan(vertices, [], [], [uvs[0], uvs[1], uvs[2], uvs[1], uvs[3], uvs[2]])`

### Steps to reproduce

Use add_triangle_fan and place your UVs as the 2nd parameter, your mesh will be black. When you change your uvs to the 4th parameter, it correctly maps.

### Minimal reproduction project

Should be trivial to reproduce (and to see why it's broken in this commit)
const Color &c = v.custom[fmt];
							w[idx * 2 + 0] = c.r;
							w[idx * 2 + 1] = c.g;
						}
						a[i] = array;
					} break;
					case CUSTOM_RGB_FLOAT: {
						Vector<float> array;
						array.resize(varr_len * 3);
						float *w = (float *)array.ptrw();
						for (uint32_t idx = 0; idx < vertex_array.size(); idx++) {
							const Vertex &v = vertex_array[idx];
							const Color &c = v.custom[fmt];
							w[idx * 3 + 0] = c.r;
							w[idx * 3 + 1] = c.g;
							w[idx * 3 + 2] = c.b;
						}
						a[i] = array;
					} break;
					case CUSTOM_RGBA_FLOAT: {
						Vector<float> array;
						array.resize(varr_len * 4);
						float *w = (float *)array.ptrw();
						for (uint32_t idx = 0; idx < vertex_array.size(); idx++) {
							const Vertex &v = vertex_array[idx];
							const Color &c = v.custom[fmt];
							w[idx * 4 + 0] = c.r;
							w[idx * 4 + 1] = c.g;
							w[idx * 4 + 2] = c.b;
							w[idx * 4 + 3] = c.a;