I get why row-level and aggregate level calculations cannot reference dimensions in a Cube data source. However, it would be very nice to be able to reference dimensions using table calculations. There may be some restrictions (such as requiring the dimension field to be used in the view), but at that point the dimension values would exist within the cache and should be able to be referenced using table calcs. Perhaps, a new function allowing for referencing the dimension as an attribute within a Cube - something like CUBE_ATTR() - could be used to differentiate the referencing of the dimension as Cube/table calc specific as opposed to a regular aggregation.
This would open up a lot of possibilities in terms of using calculations on dimensions which is not currently possible.