Hmm, maybe a more detailed description of your requirements would help us help you. :)
The GDI+ Brush is very flexible. Perhaps PathGradientBrush or TextureBrush could be used.
Do you need the colors to change after the line is initially drawn? Sounds like a job for a DX Pixel Shader! :p