Its the business case, stupid.
Look at it from an ISPs point of view. Most of their customers have never heard of IPv6, and will require a lot of support and hand-holding as they learn the new system. All sorts of old and obsolete bits of kit will break. Some software won't work. Imagine explaining to Joe Homeworker that they need to tell their corporate IT to upgrade to IPv6 before they can start work again. There will have to be an IPv4 to IPv6 gateway for the foreseeable future, and that is going to be a big headache for all sorts of applications.
And from an ISPs point of view the current situation is actually very good for business. If you hold a block of IPv4 addresses then you own a valuable commodity. If nobody else can get them then this is a barrier to entry for competitors, which is something that all the business strategy books say is a very important thing to have. So the ISPs are highly disincentivized to migrate to IPv6.