I once also had to do this, I ended up using the code from the Capturable library for the "Compose" solution, I mean the idea is clever and works as of now, though you still have to render the component.
I also looked for alternatives and dug into the Compose code, all composables are rendered using Nodes, I remember that one of those base classes had a "draw" method, where the composable gets actually rendered, so it could theoretically possible to render your Composables in for example an Android Canvas backed with a Bitmap, but sadly I it wasn't possible to do that because the API needed was internal/private