We are using haproxy in TCP mode for round-robin with great succes. It's bit unorthodox but has same real added values like logging.
Here is the relavant config for haproxy: ##### global log 127.0.0.1 local0 log 127.0.0.1 local1 notice maxconn 4096 user haproxy group haproxy daemon defaults log global mode tcp maxconn 2000 contimeout 5000 clitimeout 50000 srvtimeout 50000 listen cassandra 0.0.0.0:9160 balance roundrobin server db1 ec2-XXX.compute-1.amazonaws.com:9160 check observe layer4 server db2 ec2-YYY.compute-1.amazonaws.com:9160 check observe layer4 server db3 ec2-ZZZ.compute-1.amazonaws.com:9160 check observe layer4