i tested weavile multiple times already and what you said is just like saying t-tar sucks because its killed by scizor, jirachi, metagross and other common pokemons.
each pokemon has checks/counters and a job. weavile make sure rotom/gengar/starmie dont switch out alive, and after doing its job then who cares if it die? if scizor use bullet punch to kill weavile then you switch zone and trap, if he u-turn then he is taking damage from life orb low kick, SR(Twice if you count the next turn he switch) and letting the next pokemon he switch into a bad situation since the weavile user now switch a counter to said pokemon.
magnezon stop most pokemons in there(Bar heatran and maybe metagross) so its a great partner. you cant expect a pokemon to do everything alone right? weavile is a good pokemon, it just hate steel types in general. scizor is going down in usage anyway, and remember scarf heatran is taking massive damage if he switch into low kick, just saying.