Hi,
I understand your opinion I often have the dilemma concerning the use of a module, sometimes "too big" to do a little thing or writing my own submodule to do exactly what I need.
My Drupal experience make me lean more and more often on already developped module solution, at least, it depend on the module.
For example, instead of writing my own module for a taxonomy or node listing (like a catalog of products ^^). I try to do all things using views. Even if a customer want a product catalog exactly as the Ubercart catalog module provide. I do it with views, even if it's longer/harder.
Because there is all possible features around views, even if I don't use them for the listing I need. If, one day, I want to add some exposed filters or changing the display. It will be so easy and quick to do it with views than altering my custom module, and views is a "big" module that we can thrust. This is the same for Rules..
So, my decision often depend on the already existing module that can do the job. If it's a big module like CCK or views, I will choose this soluion because it's secure enought and it will provide a lot of extensibility.
I didn't know what to choose on the begining of that discussion because I didn't know Rules and CA. Now I test them both, I would suggest to use Rules instead. Maybe it will be a little harder to implement, a little harder to write custom rules/action, but You will be able to profit to all the drupal community work, and more and more modules write some integration with Rules. I even believe that CCK have some code for rules... And it will bring a lot more number of marketing possibilites for store owner.
Simple example : You want to change the theme of a customer that finished his checkout. With Workflow-ng (don't know for rules, didn't tested but I think it has been ported), it was easy, because switch theme had an integration with it, and Ubercart too... So you put "Customer has finished checkout" with Ubercart, and, you set your Switch theme action.
Imagine if you want to do the same job with CA now, you need to develop the feature, reinvent the wheel... Not sure it's simpler for user.
Globally, I think it's better to have a "little harder" coding, but need to use it rarely that have a "quite easy" coding and need to use it very often. In addition, I'm sure Fago will create us a nice documentation of it's not already done.
I hope it can help in your decision 



