First of all, I don't think that would work. The parameter to your factory-method is not a constructor-arg. The method is not a constructor.
Your factory-method method cannot take parameters.
Second, sometimes you will have legacy code that you can't change/touch and is written like this, so what do you do? You can't create an instance on your own and you have to call the method to create the object. So there is a configuration for those issues.
Mark, I did test this code, and it works!! The funny thing is what you pointed out. I am supplying values to the static factory method via constructor-arg tag. Take that! I like to call it Spring Magic. I'll try to look it up more.
The second point you made makes sense. Legacy code would need something in Spring to accomodate it. Otherwise, I think there should be a good reason to use a static factory method for bean instantiation, which Spring normally takes care for you anyways if you specify it in the config file.