Well for starters Vulkan is open source, so you can squeeze a lot more potential out of it. Metal is not, you are at the mercy of what Apple adds to it and you will like it. It's why MoltenVK is not the be all end all solution to making Mac ports like people think it is, as all it does is translate Vulkan to Metal, but you're still at the mercy of Metal's limitations.
Vulkan is not open source. It's a specification developed by the committee, with a bunch of optional extension for advanced functionality. Sure, with Metal you are at the mercy of how Apple wants to do things, but with Vulkan you are at the mercy of the committee AND the driver implementors. Not to mention that Vulkan needs to target a wide class of hardware, which means making compromises.
A simple example: Vulkan has raytracing and mesh shaders as optional extensions, but they are implemented on only 3-4% devices according to the gpuinfo database. With Metal, you have them on all recent Macs.
OpenGL was crossplatform which made Mac ports a lot easier, but since Apple killed OpenGL in 2018, that makes things even more needlessly complicated
Oh boy. OpenGL was notoriously different to debug and optimise. You had to test and optimise separately for bunch of different platforms and drivers if you wanted good performance. It's probably easier to port a mid-complexity game from DX12 to Metal than to write an OpenGL version that runs decently on all platforms.
Vulkan offers a lot higher performance than Metal does.
This is simply not true.
Metal holds your hand a lot while Vulkan leaves you responsible for everything. If you're a smaller fledgling developer you might prefer Metal, but if you're a lot more experienced than there's only so far Metal can take you, and if you want to go farther in pushing graphical fidelity well TOUGH
This is also not true. Yes, Metal holds your hand. But you can tell it not to hold your hand and do the low-level memory and synchronisation management yourself. Vulkan simply doesn't give you any choice. Need to allocate a bunch of simple images on a non-performance-critical path? Good luck with your low-level allocations and DMA transfer setup. I mean, even C has malloc().
Metal 3 was a big step in the right direction, especially since it added upscaling technology as Apple's answer to DLSS and FSR, but it is still leagues behind Vulkan [..] Metal is severely limiting.
I would be curious to hear a concrete reason why you think Metal is limiting or what features Metal lacks. So far you have been speaking in very vague terms. If this is about low-level control, well, Metal has had it for a while.
In fact, I can probably give you at least half a dozen features that Metal has and Vulkan doesn't. Although I admit that I am not up to date with the latest Vulkan extensions.