The Bath back-rower, 26, sustained a mild groin strain in Friday's captain's run and will be replaced by Glasgow's Ryan Wilson.
Wilson, recalled to the match-day 23 in Rome, is promoted from the bench.
Josh Strauss, who played 75 minutes for Glasgow against Dragons on Thursday, is summoned to join the replacements.
"Unfortunately David [Denton] hurt himself in training and strained his groin," head coach Vern Cotter told BBC Scotland.
"We gave it overnight to see if he could play but unfortunately it has held him back.
"But it won't change things a lot to be honest. Ryan [Wilson] is going to bring all the qualities he has: a lot of energy, his line-out ability, his tackle quality and work-rate."
Scotland are aiming to avoid a 10th successive Six Nations defeat in Rome, scene of their last victory two years ago.
Scotland: Stuart Hogg, Tommy Seymour, Mark Bennett, Duncan Taylor, Tim Visser, Finn Russell, Grieg Laidlaw; Alasdair Dickinson, Ross Ford, Willem Nel, Richie Gray, Jonny Gray; John Barclay, John Hardie, Ryan Wilson.
Replacements: Stuart McInally, Rory Sutherland, Moray Low, Tim Swinson, Josh Strauss, Sam Hidalgo-Clyne, Peter Horne, Sean Lamont.
Scotland have suffered a late blow before Saturday's Six Nations match against Italy with number eight Dave Denton forced out of the starting XV.