Dynamic CSS is fairly trivial, and even though its applications are more limited (seeing how dynamically-generated HTML with a static stylesheet solves most day-to-day needs, and CSS itself incorporates a few mechanisms to achieve semi-dynamic), I've seen it used on many occasions, and I use them myself whenever I need to.
Often, the 'dynamic' part does little more than combining several stylesheets into one (to reduce the number of HTTP requests) and minifying them (to reduce bandwidth usage), but simple things like variable substitution (e.g., using variables for colors used throughout the style sheet) can make your life much easier. However, since CSS has a fairly straightforward syntax with few caveats, a general-purpose text processing system or scripting language like PHP is usually enough for this, which is why you don't see many off-the-shelf CSS processing systems.
Maybe you have seen them in the wild, without recognizing them. Servers that send dynamic scripts usually use URL rewriting so that the URL becomes indistinguishable from statically-served content. This is necessary because some browsers (most notably IE) rely on extensions for correct MIME type detection under certain circumstances, ignoring (or discarding) any Content-Type headers you may have sent.
Regarding caching: Stylesheets are pulled in with GET requests, and making them cacheable is absolutely important for a decent user experience. You don't want to watch the page reflow as it re-downloads the stylesheet on every request. Instead, you should put all parameters that alter the output of your stylesheet processing into the query string; a different query string yields a different URL, which in turn causes a cache miss, so whenever the parameters are altered, the stylesheet will be re-downloaded, even if the client caches everything. If you really need CSS that is potentially different for each request and depends on side effects, consider putting the non-dynamic part into a statically-served stylesheet, and only serve those things dynamically that are absolutely required to be dynamic.