You dove a little deeper than I intended. In short:
- Companies use Free or Open Source Software: That's great.
- Companies give feedback (bug reports, RFCs, developer time etc.) to said projects: That's awesome.
- Companies wait for the developer and have no hard feelings when their requests are done for free, or rejected because it doesn't fit developer's vision: That's the way it should be.
- Companies pressure/threaten developer for features, timeline, requests and expect the developer to do as they say for free: Hell no!.
If they see eye to eye and let the developer be, it can be done for free. If they try to treat said developer as their employer who works for internet cookie points, now we have a problem.