Hola. Más o menos ya lo tengo solucionado. En lugar de almacenar los dos formularios en MemoryStream los guardo en dos archivos temporales. Con esto se consigue que se aplique FormFlattening correctamente. Lógicamente hay que tener permisos de escritura para almacenar los temporales.
Luego, combino los dos documentos en el definitivo ahora sí con MemoryStream, lo envío y, finalmente, elimino los temporales.
Código vb:
Ver originalDim stp01 As New PdfStamper(mod01, new FileStream(tempMod01))
Dim stp02 As New PdfStamper(mod02, new FileStream(tempMod02))
..........
stp01.FormFlattening = True
stp01.Close()
mod01.Close()
..........
stp02.FormFlattening = True
stp02.Close()
mod02.Close()
......
mod01 = New PdfReader(tempMod01)
For n = 1 To mod01.NumberOfPages
page = copia.GetImportedPage(mod01, n)
copia.AddPage(page)
Next
....
File.Delete(tempMod01)
File.Delete(tempMod02)
Un saludo