                 // no current symbol exists
                 // or is existing symbol different than the current symbol
                 if ((currentSymbolClass == null)
-                    || !(symbolObj is currentSymbolClass))
+                    || !(_symbolIcon is currentSymbolClass))
                 {
-                    removeChild(DisplayObject(symbolObj));
+                    removeChild(_symbolIcon);
+                    _symbolIcon = null;
+                    
                     invalidateDisplayList();
                 }
             }
             
             // add the current symbol
-            if (currentSymbolClass != null)
-            {
-                symbolIcon = new currentSymbolClass();
-                addChild(DisplayObject(symbolIcon));
+            if ((_symbolIcon == null) && (currentSymbolClass != null))
+            {
+                var currentSymbolInstance:Object = new currentSymbolClass();
                 
-                invalidateDisplayList();
+                if (currentSymbolInstance is DisplayObject)
+                {
+                    _symbolIcon = DisplayObject(currentSymbolInstance);
+                    addChild(_symbolIcon);
+                    
+                    invalidateDisplayList();
+                }
             }
         }
     }

        graphics.endFill();
        
        // position the symbols to align with the background "icon"
        if (symbolIcon)
        {
            var currentIcon:DisplayObject = getIconDisplay();
            setElementPosition(symbolIcon, currentIcon.x, currentIcon.y);
        }
    }
}

     *  @playerversion AIR 2.5 
     *  @productversion Flex 4.5
     */
    private var _symbolIcon:DisplayObject;
    
    /**
     *  Read-only button symbol graphic. Use commitCurrentState() to specify
     *  a symbol graphic per-state.
     * 
     *  @see #commitCurrentState()
     */
    public function get symbolIcon():DisplayObject
    {
        return _symbolIcon;
    }
    
    //--------------------------------------------------------------------------
    //
