You can implement task overdue notifications by connecting multiple timers to a task each timer will fire at a certain date and time which you can pre-calculate based on your overdue logic e.g. 10 days, 20 days and 30 days.
Also it is desirable to have the computation logic for overdue to have a backdoor for Process Center, Dev and UAT environments e.g. if a environment flag is set convert the 10/20/30 days to 1/2/3 hrs or immediate to be able to test the functionality. Since during testing the UAT users and developers can not wait for longer durations.