\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; a = 1/256(150, 100, 60);
 color b; b = 1/256(256, 220, 180);
 draw fade_filled(egg, spot, a, b, 256) rotated -30;
endfig;
\end{mplibcode}
\end{document}