Paying back 90.78 BTC now would be over $4085~. The 1603 USD amount is too low, and they should send back whatever amount in USD you paid that day, including the shipping/insurance etc, via BTC to you.
Really? So I can take orders to be delivered in two weeks and if Bitcoin doubles in price between when I take the order and when I ship, I can just refund them half the Bitcoins instead? This rule makes sense if the party not holding the Bitcoins asks for the refund, but it doesn't make sense when the party holding the Bitcoins decides to issue a refund. The point is to prohibit the party that asks for the refund from strategically choosing whether to issue a refund based on the price of BTC. Your rule, if applied to the party holding the Bitcoins, accomplishes the exact reverse of the purpose of the rule.
To be clear, I'm not accusing Coinabul of anything. But in this case, imagine if Coinabul was malicious. They simply hold the gold and the Bitcoins and wait a month or so stringing the customer along. If the gold drops in value, they ship the gold. If the Bitcoins go up in value, they refund the USD equivalent of the original Bitcoin price. If this rule were applied to the party holding the Bitcoins, it would enable malicious sellers to profit in precisely the way this rule, when applied correctly to buyers, is supposed to prevent. (I'm not saying Coinabul did or ever would do this. Just showing that this is a bad rule because it creates an exploit when its whole purpose is to close one.)
The correct rule would ensure that neither party has the opportunity to strategically choose to ask for a refund by ensuring that a refund doesn't enrich either party at the expense of the other over what going through with the sale would have done.
Coinabul converted to USD to minimize their risk should the customer cancel the sale or should they wind up keeping the proceeds. But unfortunately for them, this increases the risk should they need to cancel the sale. Someone necessarily has to take that risk, and I don't see why it should be the customer.
(By the way, I love Coinabul and prior to this incident highly recommended them. This is distressing though, and I'd strongly urge Coinabul to try to work out some kind of compromise that leaves the customer not significantly worse off.)