Campo html.hidden no se establece

Tengo un campo oculto en mi vista como este:

using (Html.BeginForm("Action", "Schedule"))
{
    @Html.Hidden("Id", Model.Schedule.Id)
    ...
}

Y un método de acción que toma la información de esta manera:

public ActionResult AddEventToSchedule(Event NewEvent, Guid Id)
{
    // Do something
}

Sigo recibiendo un Guid vacío, incluso cuando Model.Schedule.Id no está vacío. Revisé la fuente html y el campo oculto también es un Guid vacío (usé un punto de interrupción para verificar que Model.Schedule.Id no está vacío).

Lo extraño es que cuando intenté acceder al valor de Id mediante el modelo como abajo, el campo oculto html se completó correctamente con el guid, pero el modelo que pasó al método de acción estaba vacío.

public ActionResult AddEventToSchedule(Event NewEvent, ScheduleModel model)
{
    // model.Schedule is null!
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta