I often ask myself the same. I think one of the main reasons could be the fact that, differently from most of the devices you mentioned, a printer is not standalone device that needs firmware to work properly on a plethora of generations of OSs. Add the fact that afaik there's no universal cartridge standard, so to bring value to the table they should distribute their own cartridges globally...