I did a gradual method too. I would take the mare out for short rides, leaving the baby with my older gelding. And sometimes I would take baby separate and walk him and groom him away from his mom. So they were used to being separated for short amounts of time well before weaning.
Then I would start separating baby for his special baby food feedings (Purina Ultium Growth) and put him in an adjacent pen, feed them, they put them back together. Eventually I put them in separate pens within sight of each other, but not sharing a fence line so baby couldn't nurse. Weaning was no big deal. Of course I waited until he was 7 months old too, so I think his momma was ready to kick him off the milk dispenser.
Baby would still attempt to nurse for quite a while whenever he contact his mother, but momma was cranky and wouldn't let him nurse after that. I think I kept them completely apart for about a month.