I didnt get any souls from Blood dragons on my first save, argonian, but now on my khajit, I do get souls every time I one-hit them with 30x damage :>
It doesn’t matter how hard you hit them, some dragons will spawn without a soul and how you will kill them is irrelevant. It is really a frustrating bug, especially when you are playing with more realistic time scale, since dragons encounters become really rare.