"Amazon EC2 provides developers the tools to build failure resilient applications and isolate themselves from failure scenarios."
Let's highlight the words that needs emphasis.
"provides", "developers", "tools"
As to whether the developers use them or not isn't always automatic.
"you can protect your applications from failure of a single location"
"can"
Highly available does not meant fault tolerance. The latter allows an application to continue functioning after a component failure. Regardless of the snake oil that has been thrown around, there is no silver bullet that can automagically enable application to be multi-node aware with no chance of deadlock or data corruption. You need to program for this. Again, tools are provided, but that doesn't mean everyone will use them. So in the absense of a fault tolerant application, the cloud provides high availability.