Update: I seem to have fixed this.
All I did was follow this video:
I ran a Python script twice as soon as the Mavic Mini boots (otherwise it goes into mass storage mode) and although the gimbal buzzes like heck still, the image is perfectly stable. Bizarre, but saved me £100 for a new gimbal!