Merging BufferGeometries is a great thing, but as you can see it also involves some effort.
But then: 1.You can re-build a geometry with the new parameters.
A completely different approach is to create the entire geometry as a single custom geometry. Then you can make the vertices dynamic.
Examples from the Collection of examples from discourse.threejs.org
https://hofk.de/main/discourse.threejs/2018/SwingingPolygon/SwingingPolygon.html
https://hofk.de/main/discourse.threejs/2020/ColorWave/ColorWave.html
I also use this technique in the addon Addon to create special / extended geometries