This form of compensation, common-sense though it may be, runs against another piece of common sense about stocks: the older you get, the less you should hold in stocks, and the more you should hold in cash or bonds. Stocks are volatile in the short-term, but have the biggest gains in the long-term. They are the ideal investment for young people, but the older you get (and the closer you are to needing to liquidate your investments), the more you should move your savings in stocks into bond or cash form. But executives are usually old. Many a CEO is 50, 60, or 70, and is employed in what may be his last job of his career. He should be moving his investments into bonds, but the majority of his compensation he is making at that time (which is also a great portion of his lifetime earnings) may come in the form of stocks that he is expected not to liquidate.
Even if the performance of a company were purely attributable to the performance of its executives (which is hardly true), compensating in large part by stocks (or otherwise forcing executives to hold them) can create false incentives. First, in the case of older executives, the volatility of stocks is all the more present; this actually dilutes the value of the stock - CEOs won't consider the stock as valuable, and hence (for example) they will generally seek (and obtain) more compensation. As with any inefficiency, it's a loss for both sides.
Secondly, executives whose main wealth is in the form of stock could be expected to be pressured, by the volatile nature of their own savings, to act rashly to protect the market value of their companies in the short-term, rather than building sustained growth. The short horizon of the stock market is already a problem in motivating executives so this effect would be most unwelcome!
Pay-for-performance is still ideal in my opinion - but maybe more of the delayed and/or conditional compensation should take the form of cash.