Ok, this is somewhat weird, I think the problem should go away if you put a public override string ControlName => "FileUpload"; into there.
(I suppose you are not making a “markup control”, but a code-only custom control - the markup control will definitely not work, but that should fail much sooner)
NGMFileUpload is now of no use and it will be deleted.
What in fact I wanted to achieve is to not have the max file size hard coded, to use an app level “constant” property.
What I had to do in the markup of bp:FileUpload was to resource-bind instead of value-bind: