As I understand it, the maximum number of coins is determined by the fact that halving occurs every 210,000 blocks and that mining rewards started at 50 BTC per block. Any change in either of these values would mean a different maximum number of coins. Since both of these parameters are hardcoded into the Bitcoin client by Satoshi, your argument from the title is invalid.
In approximately 120 years when the mining reward reaches 1 satoshi per block, we will have a coin supply of 209999999.99 BTC, which means we'll never actually reach the total supply of 21 million. My guess is that exactly this is why this value isn't defined anywhere in the source code as the maximum number of coins.