\documentclass[border=5mm]{standalone}
\usepackage{luamplib}
\begin{document}
\mplibtextextlabel{enable}
\begin{mplibcode}
path egg, spot; 
egg = (for t=-180 step 15 until 180 - eps:
    (0.78 cosd(1/4 t) * sind(t), -cosd(t)) ..
endfor cycle) scaled 100;

spot = fullcircle scaled 4 shifted 3/4 point 3 of egg;

vardef fade_filled(expr egg, spot, dark, light, n) = image(
    for i = 0 upto n:
        fill interpath(i/n, egg, spot) withcolor ((i/n)**1/3)[dark,light];
    endfor) 
enddef;

beginfig(1);
    color a, b; 
    a = 1/256(150, 100, 60); 
    b = 1/256(256, 220, 180);
    draw fade_filled(egg, spot, a, b, 256) rotated -30;
endfig;
\end{mplibcode}
\end{document}

