Good morning!
Sadly, I do not have access to the Silverlight API v1.2 anymore, but I still have VS 2008 and Silverlight 3, so I remade as much of the project as I could. Attached is a VS 2008 solution with the SOAP service that gets the legend and the custom control that builds the legend for each dynamic layer (it only works for dynamic layers, not tiled ones).
What you will need to do is open the solution, add the ESRI references to the CustomControls project (the layersPlusLegend user control will also require a reference to the ESRI client dll), and add a project that references the CustomControls project. In your MainPage.xaml, add a map with at least one dynamic service layer on it, and a stack panel called spLegend. In the initialized event of the dynamic layer, place this code:
ArcGISDynamicMapServiceLayer dynamicServiceLayer = sender as ArcGISDynamicMapServiceLayer;
dynamicServiceLayer.Opacity = 0;
spLegend.Children.Add(new CustomControls.layersPlusLegend(dynamicServiceLayer));
Hope that helps!
Lisa