Heat oven to 325 degrees F. Oil or butter a 2-quart baking dish.
Wash zucchini and trim ends. Halve lengthwise, and coarsely grate. Place in a large bowl.
In a large frying pan, cook the onions slowly in 3 tablespoons oil for 8 to 10 minutes until tender and translucent. Raise heat slightly and stir several minutes until very lightly browned. Stir in garlic and cook another minute. Add uncooked rice and sauté for another two minutes. Season generously with salt and pepper.
Transfer to bowl with zucchini and stir together with milk and all but 2 tablespoons cheese. Taste and adjust seasoning if needed. Transfer to prepared baking dish.
Cover tightly with foil and bake for 50 to 60 minutes, until rice within is cooked but not mush. Increase oven temperature to 450 degrees. Remove foil, drizzle top with remaining olive oil (or dot with butter), sprinkle on remaining cheese and bake uncovered until browned and crisp on top, about another 10 to 15 minutes. Broil for one minute at the end.