In the case where you have two objects with a column of matching data that has different name, it doesn't appear you can merge them. Two options would be to support a mapping parameter where you indicate IP on one maps to IPAddress on another, for example. The other would be to support alias properties that were added via Add-Member, for example: $NoIpAddressColumn | Add-Member -MemberType AliasProperty -Name IPAddress -Value IP
I think the latter may be able to be accomplished by simply adding it to all your get-member calls: Get-Member -MemberType NoteProperty,AliasProperty