DelimitedListTraceListener に与えた要素

object.ToString() が呼び出された結果が " で囲まれて保存されます。文字列中の " は "" に変換されます。
複数の要素を引数として与えると、どうやら secondaryDelim というプライベートなフィールドに格納されている値で区切られるようです。この secondaryDelim の値は、Delimiter に "," を与えると ";" に、それ以外を与えると "," になるようです。

  tracesource.TraceData(type, id, "a", "b", "c");

の結果は、

Source;Type;ID;a,b,c;ProcessID;LogicalOperationStack;ThreadID;DateTime;TimeStamp;CallStack

となります。(ProcessID 以降はオプションで指定しなかった場所は空欄)