The first time I got Dish I went directly through them. It took weeks to schedule an appointment in an area of the country where it should not have taken weeks. Then the installer stood me up twice. (That was years ago.) But once he finally showed up he did the whole thing from scratch in and out in about 90 minutes and it worked great the whole time I lived there. For my current installation I went through a local business who aggressively advertises around here. Especially that they have use their own installers and that they will provide personal, face-to-face assistance. So, sure enough, installation day rolls around and some random pickup pulls into my driveway (hours late) and some random guy comes stumbling out and proceeds to take all day to mount the dish and splice into the existing coax cables. When I called the local business to complain that I was promised one of their installers they said they were overbooked and I should be glad I got anyone. I later went in to re-up for free HD for life and they were similarly less-than-enthusiastic/helpful. So, if I have to do it again, I will definitely go back to dealing directly with Dish. Either way you takes your chances with the random subcontractor you get, but dealing with Dish over the phone was actually easier that face-to-face with the local business, and at least when the installer showed up he was in a Dish van and seemed to know what he was doing.
I also looked into some of the online retailer deals with the giftcards or other offers, but couldn't find one that didn't seem shady. I'm sure there are some perfectly legit ones out there (and dbstalk is probably a great place to find them) but the couple I looked into were definitely iffy.