You can't judge your phone against others. There are too many apps to install, widgets on home screens that transmit data constantly, social network garbage to attempt to inflate our egos, pictures going back and forth, some watching movies, some playing games, screen brightness, screen time, streaming music...the possibilities are endless (and some apps are total garbage). The only way people get 20+ hours is by not using there phone that much. Anything else you hear or read is a lie. All that matters is what you get from your phone and regardless of being stock or ROM'd, nothing will change your battery life by a significant amount except the way you use it. If you you need more life, try deleting EVERY widget from ALL home screens for a full day and see if that has a big impact. I'm not suggesting that you can't or shouldn't use widgets, just try a day of life without them to see if it makes a difference. Also, if you use Google+ at all, make sure you have Restrict background data checked in the phones settings under Data (first you have to check and set a mobile data limit at the top of your Data screen). And if you have weather apps, either turn off the auto update or set it to some longer duration.
By the way, I also am running codename 1.2.0 with Frankco's 14.4 and when I plug my phone in around mid night, I usually have about 40% battery left. Same ROM, same kernel, different battery experience. I'll add that through 3 or 4 different ROMs and kernels (including stock ICS) my battery life is almost exactly the same every day (unless I'm on the road using the GPS and Places like crazy).