From a through-hole vs. SMD standpoint, the Microchip parts are definitely a win, since they're both available in PDIP.
All told, the ATMega168 + MCP2515 + MCP2551 solution costs about the same as an AT90CAN64, without the hassle of surface mount. The drawback to this approach is just code size. (ATMega168's 16k vs. AT90CAN64's 64k)
I just got my AT90CAN64 and I ordered those boards from SparkFun, so I might try my hand at the surface-mount soldering. If it's easy enough, I might be willing to buy a bunch of those and pre-solder on the CPU for anyone who's not up to the task. (I've done some SMD soldering, but it's been quite awhile...)
I got the various parts I need yesterday, I just need to set aside some time to actually throw everything together. (I'm heading out of town for the long weekend, so it'll probably be Monday.) I'm also using RBBB for the moment, although I do plan to lay out a custom board that supports connection to ISO/VPW/PWM/CAN/ECU all in one (just populate the parts you need), which will hopefully fit into an Altoids tin. I found some fairly cheap standoffs on Mouser that I'll try out once the board is done as well.
For right now, I think if someone's willing to investigate the Microchip parts, that's good stuff. Since a good part of the protocol still needs to be done by hand, most of the code will probably be applicable to an AT90CAN implementation down the road as well, so I think the more the merrier, as far as these kinds of methods are concerned
As dcb said, the ELM is the "I want it right now" solution to the problem at hand. I wouldn't underestimate how much it actually takes care of for you -- it makes life quite a bit simpler.