They have already been doing it for nearly 2 decades, there are no infrastructure or upkeep costs at this point that would be substantially diminished by removing XP support.
Says someone who hasn't even written software, apparently. Even if nothing else, dropping a configuration removes a bunch of testing costs.
However, it's even more. When Vista was released, Microsoft made a bunch of changes to the driver model -- basically the API that drivers are programmed against -- usually to move stuff from kernel mode to user mode. (This increases system stability.) Vista through 8 (I think) all use this driver model. Supporting XP as well means writing and maintaining XP-specific code for its driver model.
I don't know anywhere near enough about this to say that it costs 2% more or 20% more or 50% more. But to say that "it costs these companies zero dollars" means that you clearly have zero knowledge about what you're talking about.