Because:

1. Users should opt-in to having a cache of any significant size.
2. My measurements show that the cache is only of use if it is big enough - but the size needed is very dependent on the size of the user's collection - you cannot have one size fits all and you would need to pick a size if it was turned on by default.
3. The consensus is that the cache does not add much value for most users who use Picard to tag new files and run Picard on their existing files only rarely - and the cache is a significant size (by which I mean if every application had a cache of several hundred MB, we would all be out of disk space).