I'm far from my Edison right now so I cannot test anything, but I have an idea what your problem might be.
I don't think the problem is with the shebang line and executable flag. This is only important to start your first script. I don't know exactly how your Python program is structured, but I'm pretty sure there is some trouble finding your modules. What I would do is search in the "/lib/systemd/system/" directory for example service files that has configs that change the environment, like the current directory. If you Python script is not called from the right directory, it could have problem importing other modules.