Canvas currently bases the grade on a simple mathematical calculation. It uses the total number of points divided by the total number of days marked present, absent etc. To improve this feature, Canvas should be able to accept a preset number to attend classes. This allows the middle of the semester to still represent the actual current standing as a running total.
For example, we could assign 25 classes for the semester. We could also assign 50 points for attendance. The system will then determine that every day is worth 2 points, and it will calculate all of the grades as they happen. This will prevent massive changes in the gradebook during the first few weeks of classes.