- Your car is running low on oil.
- If your car runs out of oil, the engine will seize up.
- You don’t want your car’s engine to seize up.
- Therefore, you ought to change the oil in your car.
My problem with it is that it's only a hypothetical imperative. We can imagine a rational being somewhere in the universe that, for whatever reason, doesn't care about whether or not its car's engine seizes up, or, for whatever reason, might even want its car's engine to seize up. This kind of reasoning can deliver us "oughts" (and even Hume accepted this). What it can't do is deliver us oughts that transcend our desires, oughts that are objectively binding on us irrespective of our desire sets.
I don't see any reason to think that our desire sets will all be the same, even after rational reflection. Why - without cheating and introducing a concept of rational reflection that is already moralised - would they not be sensitive to our differing initial desires? So even if we imagine a sort of "ought" that is about the relationship between desire-after-rational-reflection and what conduces to its fulfilment, there's still no reason that I can see - other than a leap of faith - why we will all end up acting in the same way in circumstances C.
To take this a bit further, most of us do have a lot of common desires, and there are often ways that we can compromise and come up with collective ways of acting that fulfil a lot of them. Once again, this will set boundaries to what kinds of systems of law and morality societies come up with in practice. These systems are not just arbitrary - i.e, not just any system will do. But that's a long way from saying either that there is just one "correct" system or that everyone has good reasons, after reflection, to go along completely with her society's local system (as in vulgar moral relativism).