Nobody likes losing a direct service from their local station, but it's a question of the best use of overall resources.
At the moment the spread of Cambridge services is like this (based on MF southbound)
- 50 minutes non-stop
- 54 minutes stopping only at Royston and Baldock
- 62 minutes with six stops
- 84 minutes with fifteen stops so gets overtaken by the next "fast" service
If you gave all of the Potters Bar/ WGC/ Knebworth (etc) stops to the "semi fast" Peterborough services then you could spread out the four Cambridge services much better to give one every fifteen minutes from London taking 60-65 minutes (with some running faster/ slower north of Hitchin, so slightly staggered arrivals at Cambridge), ensuring no Cambridge train gets overtaken.
Peterborough gets more than enough fast East Coast services, so slowing down its semi-fast services makes more sense.