I think the idea is fine—it’s like going on strike. One of the reasons going on strike can be effective is because it demonstrates the value of the workers in question—replacing all of them at once is likely to be very difficult, and it’s far easier to negotiate. If 10% of your company calls in sick on Wednesday, you can’t really fire all of them without hurting yourself significantly more than you hurt them.
And if you fire even one person on the “call in sick if you’re gay” day, then you still run the risk of having a lawsuit—which you’re likely to lose, at least in states where sexual orientation is legally protected, unless you have a written policy that makes calling in sick when you’re not really sick a firing-level offense and you can show that you’ve consistently enforced that policy in the past. Otherwise, firing someone who called in sick on “call in gay day” while not firing someone who called in sick on “I want to work on my tan” day is discriminatory.
The real problem with this idea is that, unlike the Latino community calling in brown, it’s likely to be most necessary and most effective in the thirty-odd states where you can legally fire someone for being gay. It is also likely to drive the point home in a state like California, where there are laws against employment discrimination, but the recent Proposition 8 vote has it fresh in people’s minds. I don’t think it’s likely to accomplish much in Massachusetts, though, where there already is gay marriage and strong legal precedent and support for eliminating other forms of discrimination.