Eric, here are a few quick responses.
1. I totally understand this issue. How do you handle it today in CAMS? You have control over how you present student names in Canvas, you use the import file to tell Canvas how to display the names. If you have a technique you are using in CAMS, your queries to generate the user import file should implement that same strategy.
2. The only "pending" status for a student that I'm aware of is if the student is manually created in Canvas.
If the import is creating the user there are two possible status values: "active" or "deleted" (see definition of users.csv file)
If you are referring to the student course enrollments, there are four status values: "active", "deleted", "completed", "inactive" (see definition of enrollments.csv)
Have you confirmed the origin of student creation for records showing "pending" status?
3. Looking at the definition for enrollments.csv you see there are four possible status values (mentioned in #2). You are defining a status of "Suspension for Non-Payment" which is not a known status to Canvas. In this case your business logic will need to translate your proprietary status to "deleted" or "completed". You will need to test this to make sure you get the desired result.
4. Did you look at the generated enrollments.csv file to make sure the status change in CAMS was properly translated to Canvas? It sounds as though your business logic that is generating the csv file may need to be re-tested and validated. Also, students who are "dropped" from a course in Canvas are placed in the DropBag table and may be removed from SRAcademic. Make sure the query you are running to generate a list of "dropped" students is looking at the DropBag records.
It is also worth mentioning that if records are deleted from CAMS, there is no record to tell Canvas that a status change has occurred. I have seen a student/course be "dropped" in Canvas by deleting the record. When a record is deleted in CAMS, the associated student/course becomes orphaned in Canvas, the integration queries will no longer find that record in CAMS and no change of status will be sent to Canvas. I hope that makes sense. Bottom line: change the status of a student or course, do not delete the student or course.
I hope this helps.