Hi @lukekm,
My institution has an approach that is basically a blend of published and unpublished.
Our SIS processes create Canvas course shells for faculty 8 weeks ahead of the start of a given term. The shells are unpublished, and faculty are free to start importing content from prior semesters, building new content, etc...
We do not allow faculty to adjust individual course dates at all, and use Canvas terms to define the dates to match our policies. In practice, we restrict students from viewing course content prior to one week before a term. That means that even if faculty publish the course as soon as it becomes available (8 weeks ahead of time), students will not be able to access it until the week before the term starts. In addition, we do have a script that will auto-publish all courses with enrollments starting on the first day of each term, so for faculty it's kind of "ready or not, your students are going to have access to the course on the first day of the term." Finally we have custom code to prevent courses form being unpublished once they are published.
All of the above rules/policies were developed over time to address either faculty issues, student issues, or just for decent regulatory compliance. For example, before courses were auto-published on the first day of the term, support lines would be inundated with calls from students asking why they could only see 2 of their 4 courses in Canvas. Similarly, before we had the one week ahead restriction in place, we'd get complaints that students were being asked to submit work weeks before the term/course even started, and also that content was switching around as instructors of record sometimes need to be changed at the last minute to accommodate course schedule/demand changes.
I hope the info helps! This is definitely an area where there doesn't seem to be a "best" answer that works universally, rather something that likely develops organically at every individual school/institution. I would say that I feel it's best to have school/institution-wide rules around this though, and don't allow individual departments to come up with their own rules, as that's almost impossible to support in a single system like Canvas and just causes so much confusion for students.
-Chris