This is a good question, one that I even asked a long time ago as well.
For me it came down to the fact that the stuff I am writing will never be
outside of ColdBox anyway, so on that basis, passing in the event was made
that little bit easier. But the main reason was that I could leverage of the
getValue() more than anything, as providing defaults if the data doesn't
exist in the RC, provided somewhat less code and better logic for checking
if a value existed or not.
Other than that, I am not using it for any other special way at this stage.