As the author of Bad Behavior, I will say that I run Bad Behavior and Spam Karma 2 on my own blogs.
Spam Karma 2 will definitely catch pretty much every bit of spam you might ever receive at your blog. The problem is, there's so much of it! You may well receive hundreds or thousands of spams in a single day if your blog has been around a while.
That's why there's Bad Behavior. By cutting out 99% of the spam before it ever hits your site, you don't have to deal with dozens of Spam Karma email messages and thousands of spams. On a really bad day, SK2 might catch 30 spams that got by Bad Behavior, while BB stopped the first 2,000.
Not to mention the possibility (and it happens) that Spam Karma 2 will mark a legitimate message as spam. You'll have to go rescue it. And it's much easier to find that message in a queue of 30 spams than a queue of 2,000 spams.
I'd call that pretty decent.