Macclesfield performed the biggest shock in FA Cup history as they stunned holders Crystal Palace 2-1 in the third round.