Leafeon is much faster than Gyarados, and can Baton Pass out before it does anything. You don't need to ruin it with Natural Gift to handle Gyarados, and no one is going to switch Gyarados in to Leafeon anyway.
If you know Skarmory is going to Spike instead of Whirlwinding, you can just Baton Pass out to something else, instead of wasting a slot on Natural Gift. Even if you DO hit Skarmory with Natural Gift, then what? You can't do it again, and Skarmory can immediately heal itself with Roost. Good job wasting an item and a moveslot.
And what about pokemon with Haze? Faster pokemon with Roar?
And the difference is that, even if Skarmory uses Roar/Whirlwind, Leafeon can get some decent damage in, making it all the more likely that the pokemon brought out will be able to take Skarmory out (which then frees Leafeon up for Swords Dancing again). If Skarmory doesn't use Roar/Whirlwind, then Leafeon did some decent damage, and can either Baton Pass now (if Skarmory then Roars or Whirlwinds, so be it - you may get hit by spikes/SR, but that's small price to pay for doing over 50% damage to Skarmory) or start Leaf Blading, which, with luck, may critical hit and take Skarmory out after a couple of hits. In any case, you can protect yourself.
If you have Roar to take care of Skarmory, then Roar is the best option if Skarmory Roars, and Baton Passing is the best choice if Skarmory tries to Spikes/SR. With the Roar version of Leafeon, it's a game of prediction, and a bad prediction could harm your chances. With the NG Electric version, your next move is basically already known, the action is independent of the Skarmory move.
EDIT:
Tell me how Natural Gift is any better than Yawn and Roar?
Yawn, Weezing switches into you to Haze, you Yawn it and then come back to pass or if it stays SD up and pass. Roar Skarmory after it switches into you, it it SR/Spikes up you still have phazed it and pass before it switches into you again or SD up and rinse and repeat.
Give me examples of fast pokemon that have Roar and can easily switch into Leafeon.
OK, so Yawn handles Weezing, Roar handles Skarmory. You don't have a move that can handle both.
As for pokemon with Roar that can switch into Leafeon: Charizard, Ninetales, possibly Arcanine, Dragonite, Typhlosion, possibly Houndoom, Sceptile, Salamence, Infernape, and possibly Drapion. For Whirlwind: Staraptor, Fearow, Crobat, Swellow, and possibly Yanmega. And those are just the non-legendary ones with type resistance to Leaf Blade (I left off legendaries just because most of them could probably pull it off, and it's more interesting to see the list of more common pokemon).
And then there's Honchkrow, who is resistant to Leaf Blade, can have the ability Insomnia, and can know Haze. What, exactly, do you do about Honchkrow? Well, NG Electric has a chance of OHKOing Honchkrow after a Swords Dance, and that's if Honchkrow has max-HP and max-Defense. It also has Whirlwind as an option, and it has a pretty mean Drill Peck, so Honchkrow has quite a few ways to cause problems.