I'll have to look over the migrants code again, but I'm pretty sure that deaths do impact migrant wave sizes - it just don't display messages when it happens.
I just analyzed 0.23.130.23a's migrant code - the "target population" is based on total wealth, explored tiles, and deaths over the past 5 years (with nobles carrying an
enormous penalty, a dead King counting
10,000 times as much as a normal dwarf). Once you discover Adamantine, though, the above calculations are discarded and your target population is unconditionally
equal to your population cap - dwarves love it so much that they
don't care that your fortress is a cursed deathtrap.
After that, it compares the "target population" with your last reported
current population to figure out how many migrants to send, and then it limits that based on the size of your (u)nits screen.