The "ctime" timestamp is rarely of any use. Some backup software changes it after backing up files. It also changes if you change the permissions of the file.
Stick to "mtime" for this purpose.
In your original post, the issue is in this command:
Anything between single quotes ' ' is just a fixed string. You probably intended to type backticks ` ` to ask the Shell to execute the command. However the $( command ) syntax is preferred nowadays.
Also the "date" command included the parameter "%d" which gives the day of the month with a leading zero. This would not match a "ls -la" display until tomorrow (the 10th). The parameter "%e" is the day of the month with a space fill when it is a single digit - perfect for matching "ls -la" format.
CarloM's answer is good and corrects the original bugs in your script.
For large directories there are more sophisticated (and faster) methods using "find".