The issue is in your select statement... you have:
SELECT CPD.CPD_ID, para_users.CPD_ID, ...
You are selecting two columns name CPD_ID. The second one overwrites the first, so the recordset returns the CPD_ID from the users table and that record doesn't match the CPD table when it goes to delete.
I don't think you are using the CPD_ID from the users table on that page, so I think you can just remove it and make your recordset:
SELECT CPD.CPD_ID, Course_name, ...
That should make it return the correct ID and the delete would work.