I don't know what is wrong just looking at it. I can't seem to reproduce your error, either. I would try copying bits of the code into a separate test program to get the smallest amount that can reproduce the error.
ha, so that is why it was working for me, you posted it without the const and it was working - now
that I have put them in it creates the problem you mentioned with the overloads.
the problem seems to be tied in with this particular function std::stringstream& operator << (std::stringstream& ss, const gui::Rect& rect);
It (MSVC) just does not like this stringstream << operator overload with const.