Therefore, for the correct behavior of the program, it is necessary to hook the WM_DESTROY message.
Yes, true but, it is a bit difficult to conceive of a useful program that consists of only a standard control.
IOW, adding the hook doesn't make the program useful and, if code is added to make the program useful in some way, it is very unlikely that hooking the control's window proc would be necessary because the additional code that makes the program useful could call PostQuitMessage to make it end properly.
All that said, it is nice to have the program terminate as it should but it was already a given that the program was "peculiar" from the start.