Maxkeyboard is a pretty good site to get replacement parts from. Another good place to get replacement parts (or different key caps/customized caps) is here »
www.wasdkeyboards.com/index.php/ as well.
They have pretty decent keyboards as well. Been using mine for the past 2 years (Cherry MX Red).They have also started selling Barebones Mechanical Keyboards as well.