Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java	(revision 11760)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/StyledMapRenderer.java	(revision 11761)
@@ -74,4 +74,5 @@
 import org.openstreetmap.josm.gui.mappaint.mapcss.MapCSSStyleSource;
 import org.openstreetmap.josm.gui.mappaint.styleelement.AreaElement;
+import org.openstreetmap.josm.gui.mappaint.styleelement.AreaIconElement;
 import org.openstreetmap.josm.gui.mappaint.styleelement.BoxTextElement;
 import org.openstreetmap.josm.gui.mappaint.styleelement.BoxTextElement.HorizontalTextAlignment;
@@ -1133,4 +1134,5 @@
                     MapViewPath path = new MapViewPath(mapState);
                     path.appendFromEastNorth(pd.get());
+                    path.setWindingRule(MapViewPath.WIND_EVEN_ODD);
                     consumer.accept(path);
                 }
@@ -1602,5 +1604,5 @@
             StyleElementList sl = styles.get(osm, circum, nc);
             for (StyleElement s : sl) {
-                if (drawMultipolygon && drawArea && s instanceof AreaElement && (flags & FLAG_DISABLED) == 0) {
+                if (drawMultipolygon && drawArea && (s instanceof AreaElement || s instanceof AreaIconElement) && (flags & FLAG_DISABLED) == 0) {
                     output.add(new StyleRecord(s, osm, flags));
                 } else if (drawMultipolygon && drawArea && s instanceof TextElement) {
@@ -1615,8 +1617,7 @@
             StyleElementList sl = styles.get(osm, circum, nc);
             for (StyleElement s : sl) {
-                if (!(drawArea && (flags & FLAG_DISABLED) == 0) && s instanceof AreaElement) {
-                    continue;
-                }
-                output.add(new StyleRecord(s, osm, flags));
+                if ((drawArea && (flags & FLAG_DISABLED) == 0) || !(s instanceof AreaElement)) {
+                    output.add(new StyleRecord(s, osm, flags));
+                }
             }
         }
