I think what we ignore about buying local is that, from a macro-economic perspective, buying local is like getting a rebate.
Suppose there are two guys selling shoes. One guy charges $20.00, and the other guys charges $25.00, but if you buy from the second guy, he'll mail you a check for $10.00 in a week.
That's not different from if a foreign factory is charging $20.00/unit, and an American factory is charging $25.00/unit, but if you pay American workers to make the shoes, they turn around and spend their paychecks in the local economy, while the foreign workers don't. As a country, we're getting a portion of the extra money we paid for goods and services back when it recirculates, even if, as individuals it's not obvious how that money will make its way back into our own individual pocket.