i think it just needs resetting,
set Send e-mail when ownership is assigned
to no
and save changes, now go back and set it back to yes
should do the trick
i think its a small bug in sharepoint where even tho you set yes it still saves the old value of no, so setting it back to no and then yes usually works
EDIT
try
run this command in stsadm:
C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN: stsadm -o updatealerttemplates -filename "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\XML\customalerttemplates.xml" -url
above resets the template
now run this next command:
stsadm -o setproperty -pn job-immediate-alerts -pv "every 1 minutes"
now do an iisreset and the restart the Timer Service job within services. by default the alert is set to 5 min.
https://stackoverflow.com/questions/3762169/email-not-sending-when-task-is-assigned-but-email-sends-when-task-changes-sp20