Hello David
This does sound strange indeed. However, this is how MPLS is intended to work. The LDP labels are used to denote specific paths within the MPLS core, so you will only see prefixes from within the core in the forwarding table. Indeed, the label that is added corresponds to the next hop IP rather than the actual destination network prefix.
A PE receives a packet from a CE, and if the destination is a remote site reachable via another PE router, the BGP table for that VRF will have an entry indicating the next hop (which is typically the other PE router). The corresponding label is added to the packet.
In the example you shared, the 5.5.5.5 network based on the BGP table, is reachable with a next hop of 3.3.3.3 (PE2). The label added to the packet that denotes the particlar path in the MPLS infrastructure is 17, which is the one added to the next hop address of 3.3.3.3.
I hope this has been helpful!
Laz