Retail was a horrible system for developers.
Let's use Galactic Civilizations II as an example.
It's list price was $39.95 (back in 2006).
The wholesale price for it was $28.50 (that's what the retailer paid).
The retailer also would charge typically $1 to $3 in MDF (in-store marketing - i.e. shelf space) which was non-refundable. So if they bought 50,000 units, you wrote them a check for $50,000 to $150,000 and if they didn't sell well, those unsold units would come back for a full refund.
After that, the distributor takes a cut -- usually 40%. So we would get $17.
Then, we had to pay for manufacturing of the box which was usually around $2 per unit.
So on a $39.95 game, we would get $15 per unit MINUS $1 to $3 per unit sold in.
To use War of Magic as an example, we sold in around 75,000 units at retail with an average MDF of $2. So the first day we wrote a check to the retailers for $150,000.
They sold around 50,000 units at retail so 25,000 units came back.
So we netted around $600,000 on sales of 50,000 units.
By contrast, on Steam, if we sold 50,000 units we'd make $1.4 million and we could release the game on our own schedule without them threatening massive massive fines if we moved the release date after we signed an agreement. And Steam sells massive quantities on top of that.
GOG has a number of issues for developers. It doesn't provide retail-time reports. Instead, every quarter we get a report on how many units they say they sold. We just take their word on it that they sold that many since there's no activation or any other way to tell how many copies they sold.
And companies make.."mistakes" on accounting all the time. Atari claimed to have sold only around 1,500 copies of Demigod in Europe back in the day. But because we had activations, we knew we had actually sold around 40,000 copies during that period and made them correct their "error".
Hence, even if we made a non-Steamworks version, there's no universe where we'd put a new game on a service that didn't have some sort of activation if for no other reason that we want to make sure that there weren't any accidental accounting issues.