My experience with the workflow engines shows that the demonstrated behavior is the most common one. Once the process definition is deployed in the DB the workflow engine works with, the process definition is "visible" to the engine regardless the manner, subject, or object that deployed it there.
Regarding the above, if the applications are different you shouldn't share the process definitions among them, i.e. you should not deploy them in the same DB. Probably the easiest way to avoid the problem is to use separate DBs (users, schemata) for the different applications/Activiti engines.
You could still try to configure your engines with different names for the different applications but from what I know about Acitviti I doubt this approach will work with it, although it works with some other engines.