Additive blending, that is:
destColor = srcColor + destColor
can only lighten the color of what is underneath (because srcColor can't be negative). Its fine for making white smoke, but not black smoke.
For black smoke, you could try subtractive blending (not sure if D3D9 supports this mode or not):
destColor = destColor - srcColor
Alternatively you could use normal alpha blending:
destColor = srcColor * srcAlpha + destColor * (1 - srcAlpha)
with a mostly dark colored texture with an alpha channel that is opaque in the middle and fades to a transparent circular border. You'll probably want some noise added to the texture to make it look smoky.
Note that with alpha blending, the order the quads get drawn in matters (unlike with additive or subtractive blending) so you'll want to draw them in back-to-front order, otherwise it won't look right.