Micky Adams' men were on course to confirm their place in League One next season when Liam Chilvers made amends for an earlier own goal by heading the visitors in front.
But Kennedy glanced home a Michael Rose cross at the death to prolong Vale's wait.
It was never going to be easy for Micky Adams' men against a Dale side coming into the game on the back of three straight wins and a lively encounter produced few chances in the opening half hour, Chris Neal's save from Ashley Grimes' 18-yard volley the only goalmouth action of note.
Rochdale took the lead after 31 minutes when a punt upfield from goalkeeper Josh Lillis was headed into his own net by Chilvers, the Valiants' defender attempting to nod the ball back to Neal but getting it all wrong.
But the visitors were level within three minutes when Adam Yates' cross from the right as headed home by Tom Pope.