I would think OpenSCAD would be pretty decent at this, but honestly, I've never tried making parabola's or similar with it.
A quick google found this openscad script for parabolas: http://www.thingiverse.com/thing:84564
The wiki has a nice intro to the subject:
Print your model in ABS. Smooth it by putting it in a paint can on a little stand with some acetone soaked rags below for about 1/2 hour. Paint with some of this paint. You will be amazed.
Although the laser sintering printer downstairs produces quite nice surface finishes. Not good enough for an optical mirror, but definitely good enough for mm-wave antennas.