I would suggest that it makes sense to pay distribution charges for distribution, service charges for service, and commissioning charges to commission creation of new software.
Trying to tie things otherwise isn't viable in the long term. Inducing subsidization from artificial sources will ultimately result in rejection of this.
The way that we tend to see this is that in the beginning, projects start fairly small, and all of the the "services" associated with production and deployment remain within a single organization, and thus are funded together. Thus, a single organization may produces software, run a business (of sorts) to distribute that software, and furthermore deploy "consultants" or "service advisors" or "analysts" to help support the users of the software. With this scenario, it is not of great importance precisely who collects bills for what, so long as the organization as a whole gets enough funds to keep the overall operation viable. It is particularly unimportant when the organization is tiny, and the ones providing "service" are also developers.
Unfortunately, time goes on, and the operation expands, making the different departments increasingly independent. With free software, this "expansion" can be seen to cause pathological sorts of independence; simply within the realm of software distribution, there are companies like Red Hat Software that do a fairly substantial amount of development work directed mostly at system integration, as well as companies like Linux Central that specialize almost exclusively in "order fulfilment," as well as organizations like LinuxCare that solely provide services.
As these sorts of specializations more precisely "bracket" the pricing of the individual kinds of service provisions, it becomes decreasingly practical to "pad" prices of one service so as to subsidize another.