Did you speak with the manager? If so, what did he say? I think pulling out $1000 and asking for 32000 Rubles in his presence might have at least made your point, even if it didn't result in change (which it probably wouldn't). It is amazing how conveniently stupid people become when they are confronted with reality.
Yes, I would complain to Marriott corporate. While local issues like this are out of their control, at least they are mode aware of what is going on and perhaps they can do something if it is only some additional MR points.
Also, when your CC bill comes through showing the actual exchange rate, make sure to contact MR and get the correct number of points credited to your account based on the actual $ spent at the property.