Rest-Anything with rest requires Sleep Talk, as not doing anything for two turns is a big waste.
Ingrain- Is nowhere near as reliable as Leech Seed. Leech Seed may miss from time to time, but more importantly, it doesn't keep Ferrothorn in play like a sitting duck while the oppoent switches into something with a Fire attack.
Spikes- nowhere near as good as Stealth Rock these days, since Pokemon with Levitate or are Flying will not take damage from it.
There's also the very real threat that is Taunt. If your opponent sees Ferrothorn coming, all they need to do is throw in something with taunt and watch your plans go up in flames. Its always a good idea to keep at least one offensive on Ferrothorn. Iron Head is good damagewise, but Steel isn't a good offensive typing as it doesn't really cover a lot of types. Seed Bomb is a good STAB move and it more accurate than Power Whip but unless you invest in some Attack EVs, it won't be nearly as good as Power Whip. Power Whip may not be accurate, but that's okay since, as El puts it 'Ferrothorn can afford to miss every once in a while.'
Try this Build on for size:
#Sassy
Leftovers or Rocky Helmet
-Power Whip/Seed Bomb
-Leech Seed/Toxic
-Stealth Rock
-Iron Defense/Iron Head/Curse
If you roll with Leftovers, then pick Toxic over Leech Seed and vice versa. Ferrothorn doesn't have that much HP to begin with, so it doesn't take much to heal it up. Toxic and Leech Seed function to force your opponent to switch, making them take damage from Stealth Rock if you managed to set it up. Power Whip/Seed Bomb is a STAB move and is a good measure against Taunters and to pick off stragglers that got decimated by stealth rock or toxic/leech seed. Last slot is mostly filler, Iron Head for more STAB or Iron Defense/Curse to build up Ferrothorn's already impressive defenses. Curse only raises defens eby one stage, but it does raise attack as well, adding even more damage to your Power Whip/Seed Bomb.