...here is some sample code on how I am add the polygon
LocationCollection points = new LocationCollection();
points.Add(new Location(45.133, -75.7396));
points.Add(new Location(45.1336, -75.738 ));
points.Add(new Location(45.1338, -75.7375));
points.Add(new Location(45.1336, -75.7373));
points.Add(new Location(45.1321, -75.7367 ));
points.Add(new Location(45.1315, -75.7382));
points.Add(new Location(45.133, -75.7396));
points.Add(new Location(45.133, -75.7396 ));
points.Add(new Location(45.1334, -75.7355));
points.Add(new Location(45.1333, -75.7355));
points.Add(new Location(45.1325, -75.7358));
points.Add(new Location(45.1349, -75.7297));
points.Add(new Location(45.1365, -75.7308));
points.Add(new Location(45.135, -75.7345));
points.Add(new Location(45.1348, -75.7346));
points.Add(new Location(45.1349, -75.7349 ));
points.Add(new Location(45.1347, -75.7354));
points.Add(new Location(45.1334,-75.7355 ));
//// Inner polygon
//points.Add(new Location(41.9, -121.9));
//points.Add(new Location(41.9, -121.6));
//points.Add(new Location(41.6, -121.6));
//points.Add(new Location(41.6, -121.9));
//points.Add(new Location(41.9, -121.9));
MapPolygon polygon = new MapPolygon()
{
Fill = new SolidColorBrush(Colors.Red),
Points = points
};
map.Items.Add(new InformationLayer());
((InformationLayer)map.Items[0]).Items.Add(polygon);