I wouldn't call it a bug exactly, but more of a limitation of the DS interpreter. It can't currently recognize inherited types, when it does its type checking and even tho the structural framing type is inherited from family instance, it's not recognized as a valid type:
You can see in the image above that some elements are cast as instances and others as framing. And if you use something like the list.map node, with less rigid type checking, you can bypass the interpreter's limitation.
I think it's a good idea to highlight this to to team.