You are not really making use of the "Cloud" concept (dynamically scalable) in your proposed architecture - you are just running multiple VPSs.
So my answer would be; if you go this way I don't think you've got any advantage using Amazon EC2 over VPS/dedicated server. In fact there are probably more disadvantages (e.g. harder to do persistent storage, and yes I know you should plan for disk/server failure in a standard VPS)
Expanding on the answer - you would probably end up with one of those 3 servers running full tilt and being the bottleneck while another one was hardly doing anything.
A more 'cloud like' architecture would be to have
Web server instance using Elastic Load Balancing.
When it gets busy (some metric like CPU load/queue/page load time etc) you have a monitoring process that spins up another web server instance and adds it to the farm. Repeat as necessary. When things quieten down web server instances can be removed from the farm.
Database Server
If you can use Amazons SimpleDB service then its all taken care of for you. If you need a more tradional db then this is probably the hardest part of the system to architect in a way that is easily scalable. I am going to conveniently skip over this here!
A 'job processing' instance
Say your batch jobs are stored in some sort of Queue (like say... Simple Queue Service - SQS). A batch processing server picks jobs off this queue and processes them. If the queue grows beyond a certain size you spin up some more 'batch processing' instances.
You could get very fancy with this and have some of your jobs running on a web server instance when the load is light and move on to dedicated instances when heavy - or just about any mixture you could imagine. But to really use the 'Cloud' concept you should have an architecture that supports dynamically adding X number of servers to your pool.
The poster child of this approach is probably Animoto which is a service that takes your photos, mixes it with some music and spits out a video. A CPU intensive job that is just perfect for a pool of EC2 instances. Check out the graph, going from 50 to 3500 servers in a matter of days - thats the power of 'cloud' computing.