I'm not sure it's really a big issue, if the BMW heated seats had been ordered when the car was new then there is no monthly charge. It gives future owners the option to add the heated seats later, without that option they would have had to have the seats replaced in order to get the heated version which would have been so expensive it would never be considered.
With the car largely run by software it's easier to install the hardware when the car is built and to switch options on and off with a software flag, IT companies have been doing this for years. Everyone gets a full version of the software but with certain bits disabled if they haven't been paid for, it makes sense to just have one version of the software to maintain than multiple versions with some parts left out.