There's just one problem with using edged bullets. Metals which do not keep an edge, such as lead, are deflected by so much as iron chain mail. Meanwhile blunt bullets of the same force can't pierce a wool coat. I think there's a problem with how the engine handles blunt trauma as no degree of fiddling with surface area and force is getting these rounds to break skin, even though I am sending targets flying across the map and splattering against walls.
Bullet porn.
Clearly there is a difficulty in simulation. I'm fiddling with obscene force figures trying to get a lead bullet that shreds cloth, brute-force injures or penetrates through steel chain, yet is occasionally defeated by steel plate.
The engine fundamentally isn't designed to deal with damage figures for small objects moving at high speeds. I encountered this problem with one of the weapons from LFR. The solution I came to was to give it an unrealistically large contact are/percentage and make it deal EDGE damage. While I realize that this is not entirely realistic, it did at least give the combat results I wanted.
My solution, if you're intent on using lead, is to make a duplicate version of lead [INORGANIC:LEAD_SPEC] that does hold an edge, but is identical in name to regular lead. Then, using a custom (i.e. "make lead shot") reaction, silently swap it in as the material for the bullets and make them do EDGE damage with a small contact area. Make sure to remove [ITEMS_BARRED] and associated tokens, or you'll get weird duplicate entries showing up in the forge.
The only problem I can foresee here is that it will be impossible to tell when a dwarf prefers the special lead over the stock one, but if you avoid nobles with a lead preference, this shouldn't be much of an issue.