Why are devices like the MCP23008 or PCF8574 still around when cheaper alternatives exist?
The main reason is cost.

You have forgot to take into account two very important factors:


The cost of writing the firmware for an MCU, and then maintaining it BUG free, throughout different silicon iterations. (yes, MCU with same part number but different silicon version, might need an updated FW)
The cost/time of programming/testing the additional MCU, and finding the space on the PCB for the programming pins.


When it comes to writing a driver for these expanders, you will have to do it even if you used an external MCU, so no gain there.

In essence, it is a lot easier, and cheaper to pay a little bit more for a product that is reliable and just drops into the system.