I have attempted this trick in a legend for a proc gchart vbar. It seemed not to work. Is that to be expected?
I had difficulties assigning the right colors (patterns) to my incomplete data as well. This was easily solved by creating the patterns as they appear in the data using a call execute.

The legend however continues to bug me, :-).