C # converter valor RGB em CMYK usando um perfil ICC?

esta pergunta parece publicada em muitos lugares nas interwebs e SO, mas não consegui encontrar uma resposta satisfatória :(

Como posso converter um valor RGB em um valor CMYK usando um perfil ICC?

A resposta mais próxima que tenho é lá, onde explica como converter de CMYK para RGB, mas não o contrário, e é disso que preciso. (http://stackoverflow.com/questions/4920482/cmyk-to-rgb-formula-of-photoshop/5076731#5076731)

float[] colorValues = new float[4];
colorValues[0] = c / 255f;
colorValues[1] = m / 255f;
colorValues[2] = y / 255f;
colorValues[3] = k / 255f;

System.Windows.Media.Color color = Color.FromValues(colorValues,
new Uri(@"C:\Users\me\Documents\ISOcoated_v2_300_eci.icc"));
System.Drawing.Color rgbColor = System.Drawing.Color.FromArgb(color.R, color.G, color.B);

Eu acho que eu deveria estar usando algumas classes / estruturas / métodos do espaço para nome System.Windows.Media.

A estrutura System.Windows.Media.Color contém um método FromRgb, mas não consigo obter valores CMYK depois desse System.Windows.Media.Color!

Muito Obrigado