I think it depends on how much your time is worth to you. I had a similar situation with a phone company where they said I owed even less than you, about $20. I just paid it. I hadn't kept enough records to bother trying to prove (or disprove) my situation, and figured it was just easier. Was I charged some kind of disconnection fee or other nonsense? Who knows.
Sounds like you can prove, by logging into your old account (which presumably has the service address and all that), that you owe them nothing. I would guess that engaging with the collections agency would probably the path of greatest resistance---they treat everyone they deal with as deadbeats. Comcast customer service would probably also be horrendous. While disputing it, they'd probably try to upsell you on more services. You'd probably have the best luck trying to show the credit agencies your proof.
Sigh... $46 to me is kind of on the edge of "pay it to make it go away" versus "fight it". Let us know what you do.
Home: Corsair 760T, Seasonic 760 Platinum, Z170 Deluxe, 6700k @ 4.2 GHz, NH-D15, 16G DDR4 2400, 850 EVO 1T, 840 EVO 256G, GTX 1080, U3011, Linux, Windows 10
Work: Arc Midi, 650TX, P8Z77-V LK, 3770, 32G, 830 128G, 2x1TB, NVS 295, 2xU3014, Linux