Fiona is a very nice name, lavender and whispery. It's timeless and could be just as lovely on a little girl as an older woman. I didn't even think about the Shrek association, and it doesn't change my opinion.
"Grace" is a concept, so it comes across as more of a physical object than a solid color -- it "feels" warm and smooth. And Diana is a very bright blue with hints of ocean waves.