The database fields is_sent, is_cancelled, is_blocked are NULL by default and their labels say "Do not specify this field when manually inserting.".
However if a message is manually inserted into the table, it won't be delivered unless those fields are 0 (condition in delivery.php), in fact the inject function of emailqueue_inject_class sets them to 0.
So I'd either change their default values to 0 instead of NULL, or change their description specifying to set them to 0.