Carlos Zambrano kept his cool this time after a tough first inning, Carlos Pena hit a three-run homer and Starlin Castro drove in three runs as the Cubs rallied to beat the White Sox 6-3 on Monday night. The first matchup of six this season between the crosstown rivals with losing records drew a crowd of 36,005 at U.S. Cellular Field on a 75-degree night. White Sox manager Ozzie Guillen was ejected in the sixth inning after apparently arguing that a ball hit near the plate by Alexei Ramirez should have been ruled foul.He kicked Cub Catcher Geovany Soto’s mask several feet while arguing.Zambrano (6-4), who had a meltdown nearly a year ago at U.S. Cellular Field, recovered from a shaky three-run first that included Paul Konerko’s 20th homer. He allowed seven hits over eight innings.Carlos Marmol worked the ninth inning for the save,but did allow two singles before getting Juan Pierre for the final out.