The win was the second in a row for the Cubs since manager Lou Piniella was ejected on Saturday in Chicago after a dirt-kicking tantrum against an umpire.
Piniella was suspended four games by Major League Baseball for the incident.
Soriano has homered in each of his last three games.
Carlos Marmol got the win by retiring two batters in the sixth inning in relief of starter Jason Marquis.
Brewers starter Dave Bush (3-6) gave up four runs on seven hits in six-plus innings.