Simple...If both are already DATE type, command should be:
MONTHS_BETWEEN(SYSDATE,DUE_DATE)

If due date is in the past, result will be a positive number.
If due date is in the future, result will be a negative number.