I think the problem is that customers expected to see immediate price changes when the dollar was worth more. The reason the prices took longer to come down was that the old inventory had to be sold (at the old price). since many customers expected a new lower price, many were waiting for old inventory to be exhausted.
This time around, we have many customers snapping up items at the old price, to avoid the forthcoming price increase. So it seems to be taking less time to exhaust old inventory.
As pointed out above, we tend to operate on a fixed (and relatively low) margin.