C # convertir el valor RGB a CMYK utilizando un perfil ICC?

sta pregunta parece publicada en muchos lugares a través de interwebs y SO, pero no pude encontrar una respuesta satisfactoria:

¿Cómo puedo convertir un valor RGB a un valor CMYK usando un perfil ICC?

La respuesta más cercana que tengo es allí, donde explica cómo convertir de CMYK a RGB pero no al revés, que es lo que necesito. (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);

Supongo que debería usar algunas clases / estructuras / métodos del espacio de nombres System.Windows.Media.

La estructura System.Windows.Media.Color contiene un método FromRgb, pero no puedo obtener valores CMYK después de ese System.Windows.Media.Color!

Muchas gracia

Respuestas a la pregunta(4)

Su respuesta a la pregunta