I have something in .NET code that explodes labels to the mtext & lines/leaders, removes the original label, and purges the anonymous block created during the explode portion. It actually works with any AECC_*_LABEL object, but not the grouped labels such as alignment or profile labels. I could probably tweak it so the resultant objects are on the layer prescribed by the label and/or style and also add the Mleader portion (what happens when the DraggedState is AsComposed and the label contains lines/blocks?).