Ah, the trusty mobile compass! It's a common issue, and recalibration using the figure-8 motion can be quite effective. High accuracy mode definitely helps by using multiple data points like GPS, Wi-Fi, and mobile networks to refine your location. Disabling rotation just in the app is a solid workaround if the compass is consistently unreliable.
Sometimes interference from metal objects or magnetic fields can mess up the compass. Keeping it away from such sources can help maintain its accuracy. If all else fails, an old-school analog compass never runs out of battery!