I have done that process that you outlined from 2.13 to 2.16, and it mostly worked as expected. And it's probably no different with 2.17. However there was one time that strange things kept happening. The instructor was directly using the course that had been unarchived and upgraded, and they would occasionally have student answers disappear. This was not user error, as both they and I could verify in some way that a student actually had submitted something. I could not diagnose this, and I couldn't help but think there was some database issue across versions.
In all other cases, we just used the unarchived course to copy its templates folder into a new course (possibly after exporting exercise sets). So courses that were in use were actually bona fide 2.16 courses.
Do you really need the database contents from the old courses, like student data and user accounts? If you don't actually need that stuff to carry over, you could add a few steps:
step 5: export what exercise sets you want to keep in the newly unarchived course
step 6: make a new course, with templates copied from the old course
step 7: remove the unarchived course from active use