I'll focus on the etymology. I'm aware etymology does not dictate modern meaning, but it helps a fair bit to understand it:
All those three words are from Latin, then they got either inherited or reborrowed by French, then borrowed by English. In all three cases you're getting rid of something, but the "result" is different. This is easier to see by the verbs:
- annihilō: ad- (to, towards) + nihil (nothing) + -ō. Roughly "I bring to nothing": you had something, now you have zero, it's gone. Like Ratboy Genius saying "there are many things to be erased", he's talking about annihilation.
- dēstruō: dē- (of/from; in this case reversal) + struō (I put together). Roughly "I unbuild", or "I separate". The pieces are still there, but the build is disassembled. Kind of like when you're building a sand castle and the arsehole of your cousin kicks it, the sand is still there but no castle.
- eliminō: ēx- (out) + līmen (threshold) + -ō. Roughly "I carry out". Technically the thing still exists, but it's out of boundaries, out of mind. Like the "into the trash it goes" meme, it's elimination.
So no, they aren't homologous. However in some contexts you could replace one with the other. At least in Latin, no idea in English.