the latest generation of networking technology always requires custom ASICs, back in the 90s you needed ASICs for 10Mb switching.
this is part of the problem, by designing IPv6 so that everything had to change we have these problems. If this was something backwards compatible, that could run through existing devices in the middle without them having to change (think of it as being similar to tunneling, but with every ISP being a potential tunnel termination point without having to configure it explicitly) then we would not have to deal with the ISPs support or lack of it as an issue, only the question of getting enough endpoints to support it.
this wouldn't have solved the problem entirely, but it would have helped.
And if you are claiming that all developers who matter have implemented IPv6, please go back to the earlier post that pointed out that no current generation game console supports IPv6, many printers don't support IPv6, let alone other, smaller embedded systems.