We have fixed/improved copying content from one document to another. A new release will be available before end of July 2010. I think you will be happy with how your issues have been addressed in this release.
However, bear in mind, that formatting might still change sometimes when you copy content from one document to another.
This could happen when document's default formatting for runs and paragraphs is different.
Each document can have some formatting that is default for runs and paragraphs. These settings are per document. They are not part of any style. The fix that we've made now tries to take into account possible differences in default document formatting and act accordingly. But we have not yet figured out what is the best way to handle some situations.
For example, the formatting might come out differently if:
1. The destination document has default line spacing 1.5 lines.
2. The source document has no default line spacing specified explicitly (it defaults to 1 line in MS Word).
3. Paragraphs and styles in the source document have no line spacing specified explicitly.
4. When you copy pargraphs from the source document to the destination document, the copy will b performed "correctly". But the destination's document default line spacing for paragraphs will "shine through" in the inserted paragraphs.
I think you will get the same effect in MS Word itself if you copy and paste and there is no easy way around it.
One solution would be for Aspose.Words to expand all possible formatting before copying, but that means that every run, paragraph, style will have every formatting attribute specified on it explicitly. It is not very nice.
Another solution is for you - the client, to make sure document default's are the same or at least not conflicting in the way I described. I am now thinking of exposing document default formatting in the public API. It is not available right now in the public API, but exists in the model.