The labels are bigger because AGSDynamicMapServiceLayer uses the phone's resolution (163 DPI) to export maps. Other APIs that run on computers (not phones) use a smaller resolution - 96 is standard for most computer screens. Hence the difference.
The difference stems from the fact that labels are defined in point sizes (ex: Arial 10pt, etc). The graphic gurus of the world have decided that 72 points = 1 inch. But what exactly is 1 inch on a screen? Well, that depends on the screen's DPI (dots-per-inch). At 96 DPI, 1 inch = 96 dots. At 163 DPI, 1 Inch = 163 dots. So if you defined your label as 72 pt Arial, it would take up 96 dots on a map exported at 96 DPI, but it would take up 163 dots on map of 163 DPI. 163 is bigger than 96 (obviously) and so the labels are bigger.
If you like, you can change the dpi property of AGSDynamicMapServiceLayer to 96 and then the labels will have the familiar proportion you're expecting.
_
Divesh