I own an AVR Dragon (purchased directly from Atmel) and it works great. I'll aggree to the previous poster that the lack of a case is unfortunate (I don't really give a crap about a cable), but the Dragon is FAR BETTER than the standard ISCP programmer (MK2 I think it's called)... it does full debugging, JTAG, HV programming, as well as ISCP, and supports most devices. The more expensive models like the ICE and ONE are about equivalent on a feature standpoint (perhaps slightly superior) but are more robust, which is what you're paying extra for (has a case, input protection etc).
If you already have an AVR with a bootloader (Arduino etc) or a PIC +programmer, then you can actually program a AVR ISCP programmer firmware into it and you'll effectively have an MK2 whenever you need it. I'd still pick up a Dragon though if you plan on doing anything major with these micros