I tried to define a CompositeSymbol as a resource in .xaml, like:
<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN><SPAN class="namespace token">esri:</SPAN>CompositeSymbol</SPAN> <SPAN class="attr-name token"><SPAN class="namespace token">x:</SPAN>Key</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>CompositeSymbol<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">></SPAN></SPAN>
<esri:CompositeSymbol.Symbols>
<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN><SPAN class="namespace token">esri:</SPAN>SimpleMarkerSymbol</SPAN> <SPAN class="attr-name token">Size</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>6<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">Color</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>Black<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">/></SPAN></SPAN>
<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"><</SPAN><SPAN class="namespace token">esri:</SPAN>SimpleMarkerSymbol</SPAN> <SPAN class="attr-name token">Size</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>6<SPAN class="punctuation token">"</SPAN></SPAN> <SPAN class="attr-name token">Color</SPAN><SPAN class="attr-value token"><SPAN class="punctuation token">=</SPAN><SPAN class="punctuation token">"</SPAN>Red<SPAN class="punctuation token">"</SPAN></SPAN><SPAN class="punctuation token">/></SPAN></SPAN>
</esri:CompositeSymbol.Symbols>
<SPAN class="token tag"><SPAN class="token tag"><SPAN class="punctuation token"></</SPAN><SPAN class="namespace token">esri:</SPAN>CompositeSymbol</SPAN><SPAN class="punctuation token">></SPAN></SPAN>
<SPAN class="line-numbers-rows"><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN><SPAN></SPAN></SPAN>
This does not compile.
I think, this is because Symbols returns the generic IList<T> interface only. I think, I read somewhere that XAML can handle collections only, if they implement the non-generic version as well.
Actually, I tested it with an own dummy CompositeSymbol class. If I define Symbols as IList or List<T>, I can define it in xaml. If I define it as IList<T>, it does not work.
Maybe, the CompositeSymbol can be enhanced to support IList as well.