There are a lot of reasons why ECC is not used more widely, among which are:
- ECC is newer than RSA and Diffie-Hellman (by about a dozen years).
- ECC mathematics are a bit harder to grasp than RSA/DH maths. Most people should not implement cryptographic algorithms anyway (safe cryptographic implementation is hard; it is much better to rely on existing libraries), but developers really prefer to use algorithms that they could theoretically implement themselves (they want to feel that they understand what is going on).
- ECC has been covered by some patents. Since patent law is a difficult subject which is typically not well known by people who specialized on cryptography (because it is another specialization), the generic attitude is that of cautious distrust.
- RSA was there first, and is firmly entrenched. If you want wide usage of ECC, kill RSA first.
You do not tell which government mandates use of elliptic cryptography, so I guess you are talking about the US government. At one point, the US government paid a hefty sum to Certicom (something like 25 millions of dollars) for the right to use the techniques covered by the patents held by Certicom. It is no wonder that they want to use them, then.