MacLeod netted in quick succession early in the first half and Emily Macguire completed the win late in the second half.
However, coach Danny Kerry was far from happy with the performance despite the absence of captain Kate Walsh, veteran Crista Cullen and star striker Alex Danson - who are all expected to return for next month's Olympics.
"To be frank I’m disappointed," he said.
"Our skill execution was poor and we really should have put them to the sword. Yes we’re missing a few influential players but it should have been a cricket score.
"I’m sure it seems strange that I spoke after the Germany game [which GB lost 2-1] and was really pleased with how we’d played and we’ve won and I’m disappointed.
"We were sloppy in our execution at the end of the first half and it just wasn’t up to the required standard of execution and concentration.
"If we play like that against Argentina, Australia, the Netherlands, Germany, China we’ll be punished.”
Kerry's side will now have a week to recover before returning to their Bisham Abbey training base for the final run-in to the London 2012 Olympics.
But he singled out Susie Gilbert, overlooked for selection, for her attitude at this week's tournament.
"She has done herself a lot of favours," he added.
"She needs to give herself more belief but she has had a good tournament after the huge disappointment of being told she wasn’t selected for the Olympics."