check out this DIY.
http://www.e90post.com/forums/showth...=511799&page=2
It might help you investigate further, in case you missed anything.
I had a similar problem and found a very small wire was broken. Patched the wire, fixed.
May not be your cure but might be worth checking about before shelling out big $$