You didn't say whether you completely disassembled the keg, replaced all the o-rings, poppets and pressure relief valve (all are or have rubber parts that absorb odors and flavors), and cleaned and sanitized the tubes and posts. If you didn't, that's probably where your odor is coming from.
When I get a new keg, the first thing I do is fill it with 5 gallons of hot water and a scoop of oxyclean. Take the posts off and remove both tubes and re-insert them. This makes sure the insides of the tubes get exposed to the cleaner as well. Let it sit overnight. Clean the top exterior, including the lid, with a brush and warm soapy water. Take it apart, cleaning each part and then soaking it in sanitizer. Rinse all the oxyclean out and put about a quart of sanitizer in it. Put it back together, having cleaned each part, new and old, and soaked it in sanitizer. When it's back together, shake it around a few times and it's ready for beer when you need it to be.