I know they are different, but having not looked at the documentation for the API, I would presume MS has tools that allow for cross-development to be less of a burden on developers and allow them to use very similar code across each platform, differing mostly in optimizations and specific platform requirements. So to make it Vulkan on PC and DX12 on xbox is strange. Whereas the more logical approach would be DX12 on both, and using Vulkan on PS4 if allowed and/or supported with an extended sublibrary to add Vulkan functionality to the ps4 framework SDK. If not then using the normal SDK.
Just seems like a lot of specific platform code for the same thing. They could simplify it with DX12 on 2 platforms with Sony being the odd one out. I mean it's their choice and if they feel their decisions give them the best oppurtunity to make their game and have solid performance on each platform, then so be it.