You'd be excused for feeling skeptical about Nick Cannon appearing in a serious drama about a Marine about to be shipped off to Iraq. And if knowing it's from Neil Abramson -- director of the Jerry Springer trainwreck Ringmaster -- turns you off altogether, well, no one will blame you.

But American Son is blessed with a powerful, honest screenplay by first-timer Eric Schmid, and Cannon -- who has always been charismatic, if nothing else -- displays a remarkable talent for drama. Abramson has done some documentary work since Ringmaster (a film that I assume he's embarrassed about, too), and that eye for real human drama helps make American Son a compelling picture.

Cannon plays Mike Holland, a Bakersfield, Calif., kid who has a 96-hour leave from Camp Pendleton before being deployed to Iraq -- except he's not telling anyone that Iraq is where he's going. He's not ready to face that truth himself yet, much less confess it to his family and friends back in "Bako," as they call it.

The film periodically reminds us how many of Mike's 96 hours are left, a sort of doomsday clock that helps us share in Mike's slow-burning panic. He has only four days in which to have Thanksgiving dinner with his family, reconnect with his high school buddies, and find some solace and relaxation with Cristina (Melonie Diaz), a Latina he met on the bus ride home. Since she's new to his life, she doesn't have any expectations of how he's supposed to act, which is a major relief to a guy in his situation.

Bakersfield is portrayed (accurately, in my limited experience) as a barren, desolate city, perfectly befitting the bleakness of Mike's frame of mind. What's more, the situation should feel familiar to anyone who's ever gone home only to find that nothing has changed. Mike hangs out with his regular buddies, none of whom are going anywhere or doing anything, still drinking beer and smoking weed every night. His best friend, a white gangsta named Jake (Matt O'Leary), even resents him a little for doing something with his life. When it comes out that doing something with his life might mean getting killed in battle, the pain gets even deeper.

Cannon's performance is noteworthy for being loose and informal -- he never seems to be "acting" -- while clearly being the work of careful rehearsal. He strikes the right tone in every scene, cavalier in one, terrified in the next. A sequence with an injured Marine (Jay Hernandez) living in Cristina's neighborhood is surprisingly emotional, and a near-perfect representation of the macho but sensitive bonds forged by military service.

There are nice realistic touches everywhere, from Chi McBride's performance as Mike's deadbeat father to Tom Sizemore as his unsure stepfather. Most of all, you sense Mike's despair over not being able to make these 96 hours a perfect send-off for him. The film is 100 percent apolitical, with no mention of the rightness or wrongness of the specific war that Mike is being sent to fight. The point is that he's somebody's son, brother, and friend, and he's going to war.