Because EE evaluates different tags at different times, your code isn’t working the way a typical program would, executing from first line to last line.
Rather (as I understand it), there are a series of substitutions happening on the whole template. So, you can imagine a bunch of searches and replaces across the whole template putting new values in for different types of tags, until it’s transformed to the final output state.
Here’s a reference to the EE template Parse Order:
http://expressionengine.com/wiki/Parse_Order/
In the case of your example, I think what’s happening is that your this_mainabout variable (a “Dynamically Assigned Global Variable”) is being parsed *after* the conditional IF statement (a “URI Segment conditional”). So, the IF isn’t actually comparing what you’d think it should be.
So, I’d try to handle this by just getting rid of the this_mainabout variable in your IF statement:
{if "aboutwwp"==segment_2}{embed="{this_section}/.include_quotes"}{/if}
I’ve built many dozens of EE templates, and I still get tripped up by the Parse Order once in a while. But having handy that Parse Order reference on the EE wiki can really help when you run-up against something like this.