Tried ICS, went back.
For an alternate viewpoint:
I tried three versions of ICS: Passion, Zen, and Euphoria. I had varying experiences with battery life; Zen had relatively outstanding battery life. The experience was smooth as butter, especially in Passion, but I admit to being lucky; my phone overclocks like a mad beast. I tried various kernels and solutions for the GPS problem, including FasterFix, with each of the ROMs.
Today, I'm back on Bionix, because I need reliable GPS. If it weren't for that, I'd be on Euphoria or Zen right now; those devs have done an incredible job. The GPS problems are completely not their fault. Samsung refused to release their GPS source, so there's not much the devs can do.
I wanted ICS to work so badly, and I tried every single GPS fix, but I got tired of CardioTrainer not being able to establish a GPS lock without a full reboot. I could've even lived with that if I had reliable locks consistently after a reboot, but I couldn't even get that. I'm willing to reboot once; I can always reboot while putting on the running shoes, but reboot, test, reboot again doesn't work.
I'll second the hearty recommendation for ICS if you're not a heavy GPS user. The experience was magical; I don't have any urge to get any of the new shiny phones. If you think you've got a solution for GPS that works, try firing up CardioTrainer (or a similar app) and walking or driving around for a while. I'm not sure the devs can ever get that to work; they've been denied tools they need, and the fact that it works at all is astounding.
The upgrade is simple, and it's really easy to Odin back to stock if you're not satisfied. If you're not a CardioTrainer or Navigation nut, it's definitely worth a look. It hurts so badly to be back on Froyo...