There is a difference between turning a negative symbol into a positive one and continuing to use a word that you claim is EXTREMELY offensive... unless you or someone that looks like you is the one saying it. For example, the pink triangle is strongly associated with the gay community, but being a gay man, if I saw someone that I know is straight with that symbol, I'm not going to get offended. I might engage that person in conversation about it in case they aren't aware of its meaning, because I wouldn't want people to get the wrong idea and bring about an embarrassing situation for them (i.e., a person of the same gender hitting on them), but I'm not going to get offended and demand that they never wear that shirt again because I somehow "own" that symbol.
That is quite a bit different than this situation: There are three friends, two are black, one is white, all are very affectionate towards one another. The two black guys regularly call each other the N word and one day, the white guy, wanting to fit in despite the fact that saying the word makes him uncomfortable, calls one of the black guys that. They both get angry and tell him off. He knows it's an offensive word, but at the same time, they are all friends and he doesn't understand why he can't say it and they can, as they know that he isn't a racist and doesn't mean it as an insult any more than they do. They tell him in no certain terms that he can't say this word because he is a white man. He can't say it because of the color of his skin. That is RACISM. And it is why there shouldn't be a double standard when it comes to words like this. The word is either offensive or it's affectionate. It can't be both... now, the way that it is used may make it that way, but the skin color of the person saying it can't magically make its meaning change. The bottom line is that if a word like this with such a painful history associated with it is going to cause so many problems, nobody should use it at all, and that way nobody gets hurt by it.