I'm not so sure about Mareep in A. Its offence is good enough, but it's not really comparable to Magmar in spite of them having the same punches, one powered up by STAB, because Magmar is way faster, learns Flamethrower naturally and is immediately available fully evolved.
I just feel that, as a slowmon, it could use some qualities like having a good typing to tank attacks, i.e. something Golem has but Mareep doesn't (resistances to electric and steel don't really cut it, though that makes it pretty decent for Jasmine and it's pretty good in many other places as well).
To ping-pong what atsync said about Mareep being 'at least an A', I'd just say it's 'at most an A', and that's still kinda pushing it IMHO.
I wasn't looking for a side by side comparison that applied in practice, I just used your examples. Yes, it's the same multiplier, but it's a smaller difference (2 pts at L5 vs 16 pts at L40). Those Tauros vs Miltank differences mean like nothing in practice. It's prolly within a damage roll.
Yeah, an actual big gap like Starmie vs Krabby using Surf, that can matter every once in a while. Though they will still be eerily similar in a lot of fights where Krabby would use Surf (eg Hikers), once again showing that the fact that they have access to Surf is much more important than how much of a SpAtk stat is behind it.
Dealing 3x damage with Surf will come handy in a great number of situations, regardless.
Offering 20% more damage (nearly within a damage roll as you say) will still help you finish off some foes without taking a counter back if that 20% damage gives you sufficient power to OHKO/2HKO/etc. It may not matter in many cases, but if you have to choose between less attack and more attack, in a vacuum... well, you get the idea.