This sentence describes an action that started in the past and is still ongoing. The phrase "for two days" indicates a duration. Therefore, the present perfect continuous tense is appropriate here to emphasize the ongoing nature of the cooking.
Lida has been cooking for two days to prepare for the Christmas party.