The problem appears to be specific to Kate. Using GVim (by preferred text editor), it starts the new instance on the current desktop. When Kate is started, it must see that an instance is already loaded and proceeds to load the new file into that instance and if it happens to be on a different desktop, it annoyingly switches to that desktop. I see no option in Kate to prevent this. I also see no option that prevents this in system settings/file associations.
The only way to prevent this (but it doesn't always work) is to open Kate from the launcher in the each desktop. Open a file then goes to the Kate on that desktop. This doesn't work if you first open Kate for a file (from Dolphin) in one desktop, go to a another desktop and start another Kate from the launcher. Opening a file on that desktop goes back to the first Kate in the other desktop. Looks like if the first time you start Kate from a file association, that is the Kate instance that is used for any further file association open.
I guess they prefer you not to have multiple Kate instances running. Perhaps there is another option somewhere to change this behavior, but I couldn't find one.
Mint 13 KDE: AMD FX-6300, 16GB RAM, GTX 660Ti (2GB), Gigabyte 990FXA-UD5
(with Windows XP and Windows 8.1 VMs on VmWare Player)