Yes, that is what I would personally do. Some people run prefer to remove references to llblgen runtimes but I just consider the runtimes as a dependency of my applications, so I dont have any issues with that approach.
As for issues, I havent run across any, but I use the adapter pattern mostly, so the entity classes dont contain any implementation code like the self serviceing classes do. So there typically isnt any worry about passing them around between processes or other dlls.
You might onsider making your interfaace more generic, just in case you ever need to change the type of object passed to the OnOrderComplete method, i.e. OnOrderComplete(IEntiy2 orderEntity) or OnOrderComplete(EntityBase2 orderEntity).