This is all rather painful isn't it! There is a page with sizes on here - you need to go really small! 42px. Make sure you add the 2x and 3x versions of you image to avoid it looking blurry.
https://developer.apple.com/design/human-interface-guidelines/complications#Circular
Post
Replies
Boosts
Views
Activity
I had a similar issue - what I was doing was calling removeAllPendingNotificationRequests immediately before I scheduled the new ones, just to clean everything up before reseting. The problem with that is that this method does the actual work on a background thread, so if you immediately add new notifications it's possible that they are deleted by the deferred removal.
For me, the plist having write access for everyone was the problem. I did chmod go-w on it and it worked.
Why is the launchd system so fragile and uncommunicative? It's like they don't want developers to use it. I've raised a bug with Apple.
https://feedbackassistant.apple.com/feedback/15371740