"Custom" Software is always a term-contract for the end-user.
A "programmer" at the "region" of customer is a safety that can feel, touch, revile-blast, beat
(why not)
A "technical-support" at the "region" of customer is safer for two parts (programming company<->end customer)
The idea of selling the source-code to the end customer - that may be never will have the power/knowledge to use it... is something that I always thinking (you never know, when you are going to die, or sick, etc) especially for products/software not having "replacement" (rare). Is also something that gives higher cost ?
I think that is more/much honest - better and much safer to sell as a service... if it is something will have public
Having partners that will support is an "add", but you must honest that these will only supporters, installers (and the communication person for the region)... and not programmers.. those partners you can pay them by the visit counts, by hour... by month (if you need for Greece I am in)