A word is only offensive if somebody takes offense at its use. People who try to demean others lose their power if you just don't feel bad about it.
Words gain new meanings all the time. When used to refer to people it used to mean happy. Then it came to refer to homos in a derogatory way and then the queers started using it to try and "take it away" from the breeders using it in a mean way. Obviously that didn't work. Now the term has 3 meanings: happy, homosexual, or "really lame or bad" (lame of course having taken on new meanings itself). If somebody uses it to describe something or even someone as "lame or bad" then take it that way and it's no longer an offensive word. Whatever its origins in this usage, the word has a new meaning now and the origins don't really matter.
I use ghey as the spelling when I'm referring to lameness though. Just because it's a better looking word to me.
Of course, some consistency in the moderation of the use of the word gay on these forums would be nice.