Well, it depends, the biggest reason to take the car to a bodyshop is that the paint gets baked so is harder than you can achieve at home. You simply can't do this at home unless you have a garage sized oven.
I did some painting of interior bits last year and as long as you take your time and rub down with 2000 grit wet and dry between coats, and ensure each coat is clean (harder than you think due to static) then its easy.
However, for colour match and paint longevity I'd go to a bodyshop.