On a very basic level
$d = (strtotime($now) - strtotime($due))/60;
but I haven't tested whether that will work if $now is earlier than $due, and you'd want to check validity and so on. Though abs() would probably cover the first point. Also a quick google suggests you should look at the DateTime class to do stuff like this now.
ETA: also what Guido said, result is probably meaningless if you don't know whether due time is am or pm. If you're truncating the due time because it also contains 'am' or 'pm', I get the impression strtotime() will handle that.