9 columns X 9 rows X 2 colors X 9 levels = 171 outputs
Your arduino I/O pin count would be 12 outputs pins. Three to control 11 series connected 16 bit shift registers with constant current output pins, and 9 to drive 9 cube level driver transistors.
I would suggest using shift registers like this one: http://www.allegromicro.com/en/Products/Part_Numbers/6276/
, however there are other manufactures that offer equivalent chips. 16 bits per package and the integrated constant current output stages help keeps the total cube component count manageable.