Pullup resistors value of STM32F103C8T6 GPIOs too weak, why not more flexible?
You not only need a resistor but also a device to enable/disable it, a register to hold its configuration as well as circuitry to write/read that register.

Also although resistors are simple they actually can take up a lot of die area and so usually a very small transistor is used instead - the actual value will vary greatly from device to device and over temperature (maybe +/-35% from nominal). 

The pull-up/pull downs in a GPIO port are not normally used as part of an active circuit where the value is critical but as a way to set the default value when the pin is not driven. I would not recommend using them as I2C pull-ups for example.

Overall the additional functionality by adding a choice of pull-up resistor values is almost certainly not worth the die cost, especially compared to other I/O features such as a pull-down, or selectable drive strength.