Sure, that's the regulation. And sure, no test is perfect. But if I, a female, have sex with a bisexual male who has had sex with other men recently, I can give blood. I, being female, can have 'risky' sexual behavior, including things like anal sex on one-night stands, and give blood - yet a gay male in a stable relationship with one person cannot.
Not to mention that the reason for this stems from AIDS in the 80's - and the outlook for catching HIV is lower than it has ever been. And I'll point out that being gay does not prevent one from donating in other countries.
This restriction is nothing but ill-informed policy and discrimination.