Xperia phones became alike when it comes to framework and loaded software, also kernels are alike.
For me the really awesome battery life roms are the ones based on stock, for example I own Xperia Arc S and I am using Stock Kernel + CWM and a ICS Stock based rom Arconium, overclocking your phone will make you lose battery no matter what you do, so you keep your CPU normal, or under volt it a little bit, but still it wont affect battery life as much as you think, you will just get a slower phone instead.
CyanogenMod kernels and roms will suck your battery life, stay away from them and the ones based on them, MIUI roms are good when they are official and not ported.
So my advice is Stock rom, or stock based rom + Stock Kernel with CWM.
Kernels that are made for over clocking usually comes with "improvements" but those improvements usually don't help saving battery but make it worst by generating more CPU work and errors.
- Charge your battery until its 100% and let it dry until 1% before you charge it again.
- Lower your brightness as much as you can.
- Disable vibration feedback, and use audio instead, for example on the keyboard.
- Remove any programs that you don't use, specially programs that stay always on and push advertisements.
- Use smaller and faster launcher, Go Launcher for example waste more battery then stock SE home, get Apex launcher for ICS or Launcher PRO for ginger bread roms, there is another good launcher that doesn't waste battery which is espier launcher if you don't mind the iphone style.
- use wires instead of Bluetooth headset when possible.
- Don't use any lock screen apps, or live updating widgets.
- Use Darker wallpaper.