Why does everyone complain about official Atmel programmers/debuggers being too expensive (or be so hesitant on getting a cheaper clone)? If you cannot affort $50 for a programmer than you'll have a hell of a time having a product manufactured!
First of all, Atmel doesn't properly warrant their programmers and debuggers. If one breaks you are on your own. Even if you buy the most professional product from them.
As for the various products:
Atmel's cheap debugger (the Dragon) is borderline to rubbish. And it does not support all Atmel MCUs. Buy them in packs of five if you need them in a professional environment.
Atmel's expensive one (AVR ONE!) also doesn't support all Atmel MCUs. Don't expect Atmel supporting you when you have an issue.
Atmel's preferred (preferred by Atmel ...) starter kit STK600 has mediocre features (only JTAG programming, no JTAG debugging), is expensive, and has a confusing amount of expensive add-ons (something like 60+ ones). Often the right, mandatory add-ons not being available when needed.
Professional user's preferred STK500, is, despite its popularity and protest by users, put on life support, no longer properly supported by the latest Studio release, and no longer gets firmware updates to support newer AVRs.
Atmel's JTAGICE mkII is overpriced for that bit of plastic it is.
Atmel's JTAGICE 3 is a little bit more robust than the mkII, but is only supported by Studio 5/6, not supported on any other operating systems at all, and does not support some classic AVRs.
Atmel's AVRISP mkII is also a piece of plastic, but reasonable priced. Only that it is just a programmer, not a debugger, and when it comes to programming it does not support JTAG and aWire programming at all.
To answer your question, it is not just that people think the debuggers are too expensive, but that one doesn't get one's money worth.
Well, I know, in the "good old days" we had to pay $10000 and more to get some in-circuit emulator. But dude, these times are gone.