The lightmap must use the same vertices as the model. You can have different sets of UV coordinates, but you can not have different sets of vertices. Thus, you need anyway to read the mesh in the first place before you can create the lightmap for it.
The vertex buffer already contains doubled vertices when the model has seams.