When the government wants better airline control systems and new airports, the government pays for it. When they want safer roads, the government pays for construction and improvements. When they want changes in railroad safety, they just order the railroads to pay for it. The law to implement Positive Train Control was passed before the technology had even been developed - and it has to work seamlessly on all systems. So when 4 railroads share use of a section of track, that track's PTC system has to work with all 4 railroads' systems. And those railroads' systems have to work everywhere those trains go (and shared usage of track is very common).
The railroads kind of get a raw deal in that the government doesn't pay for their infrastructure like they do for airlines and truckers. Changing systems like this is a pretty big deal - design, construction, installation, testing, maintenance, retraining thousands of workers, losing millions of dollars of inventory of now-useless spare parts for the systems getting replaced, etc.