The emulation path for providing vertexbuffers for draws via api that does not provide vertexbuffers handles instancecount correctly.
The shader itself should be changed into
#if !defined(SHADER_TARGET_SURFACE_ANALYSIS)
instead of D3D11 specific tag. That makes it work on all platforms.