Hi Steve! Thanks for sharing this, I think we have an existing solution - have you tried using the PUT /v1/documents/{documentId} endpoint?
It will allow you to make a change to a dashboard in place without deleting the dashboard. It would be a full replacement of the queryPresentations array, and not a per-tile patch but should help smooth out your workflow.
Let me know if that works!