Long story short, PMs are closer to the money. When you're managing a project, you know you have a budget of X dollars to get it done. If you get it done in X-P dollars, you can take that to your boss and immediately show that you made, or saved, the company P dollars.
As a programmer or engineer, you may not even be directly aware of what the project's budget is, so it's harder for you to demonstrate how much value you're providing.