According to the "old" rules, only one is correct:
"I was late BECAUSE OF a traffic jam". ("because of" = preposition)
But in 2014, almost all Americans now accept "I was late DUE TO a traffic jam."
(If you want to follow the old rules, then "due" (an adjective) is used like this:" My lateness was DUE to a traffic jam.")