Ah, the bleeding edge. It's a war out there!
This morning, Facebook released fbwatir. I've just spent the past few hours knocking it around, and have come to the conclusion that it's pretty mega-borked but it can be saved.
In fact, I now have it working with Cucumber and Firewatir. There are several major flaws in FBWatir, the biggest of which is that it assumes its own responsibility for the browser object. This is broken, and causes Cucumber to spawn an innumerable number of Firefox windows. Commenting out the browser invocation in FBWatir and putting into cucumber's own env.rb file is much better.
I also discovered that there's a bug in Firewatir 1.6.2 that assumes that "window zero" is always broken, but Javascript indexes the windows starting with zero, so window zero is still a valid window ID. Annoying as hell, but easily monkeypatched away.
I now have Cucumber working with FacebookConnect...
Given how little I know about Ruby, and given how my Ruby expert says I'm doing "inappropriate things" with the Ruby scope, that's a freaking miracle. We're working together to make it work better.