Hi David,
Just remember that once a program is complete for a user, it won't be marked incomplete by a course resetting (as part of a certification) or even adding a course to the program. It's actually based on course sets, so if a program had multiple sets that need to be completed in order, once a user has completed the first set and new content is added to the first set, they wouldn't even need to go back to complete that.
I hope that helps
Lee