I'm sorry that Refresh didn't "just work" - it's supposed to. One of the sections is probably failing to sync and blocking the operation. We can do better here.
Please use caution clearing the notebook cache: if notes from your Macbook are not making it to OneDrive and your phone, this implies they only exist in the local cache. Clearing the cache could result in data loss. Misplaced Sections (sections that failed to sync) only exist in the local cache. I would suggest going to OneNote --> Preferences --> Backup --> Back Up All Notebooks Now to be safe. If needed, you can later File --> Open Backup.
At this point, I would recommend manually Closing the notebook in question. Any local unsynced changes will go to Misplaced Sections. Then re-open the notebook: it should open on the newer sync stack, which is what Refresh is trying to do. Ideally it will auto-recover anything from Misplaced Sections, but if it doesn't depending on the state of the notebook, you can manually Copy content from Misplaced Sections into the re-opened notebook. This should be minimal whatever recent local changes never made it to OneDrive.
Again, I apologize for the poor experience as Refresh is supposed to be an automatic and seamless operation.