It works fine for me:
void ParentForm_FormClosing(object sender, FormClosingEventArgs e)
{
Console.WriteLine("Form closing");
}
private void UserControl1_Load(object sender, EventArgs e)
{
ParentForm.FormClosing += new FormClosingEventHandler(ParentForm_FormClosing);
}
Check that you have hooked up the Load event handler for your control.