An interface is not only about arguments, but also about returned type. And all factories have different return types and cannot implement the same interface
The current factories do only specify a return type in @return, there is no reason why this couldn't be achieved using an interface. A scalar typed interface could still leave the return type blank, allowing both auto generated factories and custom factories to implement the same interface.
When creating custom factories (I actually like to write the code myself) the code could just die when upgrading magento (without a warning).