The reason imo are:
1. very poor RD and as an effect-no real development in camera sensors. To be honest-there are no new products,only corrected or improved to catch market standard (competition)
2. very very high price, not corresponding with quality (sensors) and competition's offer
3. canon is now only driven by accountants and marketing guys.
4. The company strongly believes that loyal customers who already own canon and invested hard in some gear will stay loyal and put more money into the company's wallet.
5. A lot of users buy ie. 5d3 cause a previous model lacks a lot of basics (AF) not because a new one has such a great features. Maybe the 5d4 will have a slightly better DR, no banding, higher x-sync-things which are already provided on the other side of the fence. I know that someone can say that the grass is always greener there, however I checked two sides and that's my opinion
IMHO Canon pulls the wool over its clients eyes.People are not stupid and don't like to be cheated somehow. People care about their money. I do not see any real improvement and the company does not make me feel it will strongly develop in future, on the other hand, they demand in a greedy way. If had to start from scratch I would definitely go for Nikon now. ( I have already switched to Canon and really regret the decision). Now I just do want to loose my money but I feel that will be my final decision. Moreover I have a lot of problems with my gear since the purchase, so far service did not help me or exchange body to one which works properly.