So manually animating the coat didn't go so well. Instead I've created a low resolution version of the lower half of the coat mesh, put the armature, then the sim on that, then a solidify modifier on top of that. To connect the high resolution coat to the low resolution sim mesh I use the normal armature deform for the top half of the coat (arms etc), then use the low resolution mesh with solidify modifier as a mesh deform cage for the lower half of the coat. You need to do all sorts of weight painting and multi-modifier tricks to get the two to play nicely together, then you need to have a doubled up copy of the armature for the coat with copy transforms otherwise you'll run into a dependency cycle (this depends on your rig of course). If you're going to use cloth simmed objects linked into files as groups with proxied armatures you need to then link in the cloth sim object and the collision objects again after you've done your usual group linking. Overly complex I know, but it works... just.