Over at Thingiverse, the Dutchman known as srepmub has published a great looking 3D printable retro joystick. The instructions contains printable parts, PCB and build instructions. As a later entry, he shows the results of two days (!) of polishing. A great looking, smooth joystick!
The only non-printable part is the DE-9 connector. Personally, I would love to replace it with a Arduino Leonardo or Teensy and implement it as a USB device. It would be the perfect combination for some emulated retro gaming!