The two main use-cases I think are this:
Someone writes a stack which allows you to edit a file of some sort. It is a single-document editor, so the actually editor stack always hosts the file. In this instance, the filename of the document is distinct from that of the stack (indeed, the stack might use its filename to find resources). This would require a distinct property.
Someone writes a multi-view editor which works by replication of a template stack. Now, in this case the editor stacks would never be saved so whilst the 'filename' property of them might be something which could be used for the actual document filename it mixes up two things. Particularly if you think about editing in the IDE - if you accidentally save one of your replicated editors whilst debugging the editing of a specific file, you'd end up overwriting your test document file by accident.
Having an explicitly separate property to control the document filename is definitely going to be the much more common case, and something which will avoid any accidents whilst editing in the IDE.