MattF - thanks for offering this alternate solution! I'm using Matlab version 2018a, and it doesn't seem to work for me.
When I create the first legend, hL1 has type matlab.graphics.illustration.Legend. Then when I create hL2, it has the same type, and appears to simply overwrite hL1, even though both stay in my variable space.
I then tried to assign them different locations, but the last-created legend just moves around - the first legend appears to have been over-written. I'm guessing that this is a Matlab version issue, but wanted to know if I was missing something, perhaps in those <options>.