I definitely do it if I'm Toronto (and I've done my research to know that Mac won't hold out or anything) due to both that contract and the fact that MacKinnon and Matthews will likely be separated by 10 points at most but both be 70+ point players every healthy season of their career. Getting five years of an elite first line centre at $6.3M is worth it to lose the younger player when that younger player won't be two steps better and has a contract coming up based on 2018-2019 salary cap.
I don't ever touch it if I'm Colorado. Matthews is approaching RFA, he has no emotional connection to Colorado since he wasn't drafted or developed there. He'd ask for a hefty raise. So you'd be paying a younger player more than you were paying the guy you had and it wouldn't be for a 20 point difference or Hart play vs. just a bunch of scoring.
I just don't see enough of a gap between players for it to be worth it for Colorado, even if you could guarantee that Matthews would outscore Mackinnon every season for the rest of their careers.