This is what I think the solution is:
Step 1:
We know that Ps next to each other must be in the same pentomino, so trivial first step is:
Step 2:
There is no way to make the yellow marked P belong to the red or green regions without it bounding both, so it must be its own colour (yellow). This makes the blue ringed P necessarily belong to the blue or green Ps as red can no longer collect it without touching yellow. So we add some Xs and get:
Step 3:
Some examination of the P near red shows that we have to collect it.. there is no way to avoid touching that square with a P pentomino. So we bound it with more Xs.
Step 4:
We know the ringed P must belong to blue or green. This causes us to wonder how we will connect the Xs back out in groups of 5 later. Yellow can't touch the green pentomino and must leave enough gap for the Xs to escape the centre. Specifically the red X below must be a gap or else the it touches green OR makes a small internal space. The only P yellow can have therefore lays down. But which way?
Step 5:
A trivial calculation for the bottom corner, which coincidentally also gives us our first non-P region which is forced upon us:
Step 6:
Now we look at the bottom left and find that we need pink and purple given Ps to be different shapes because of distance apart. In order to keep a gap between them we at least know 4 of the 5 possible squares... but there still seems to be a fork in options. I figure it will be resolved when we need to assign non-P shapes:
Step 7:
The setup for purple has forced the central P to be decided in favour of green - there is no longer a path for blue:
Step 8:
Now the blue pentomino is forced, and we are forced to include an edge X to make sure we have them filled by pentominos... This means purple is also forced, and we have our second non-P pentomino which is an L:
Step 9:
We can now settle on the pink pentomino because our alternative sets two Ls next to each other when we go to claim Xs. This way around we can place and I along the bottom instead. But this also means we know the direction of the yellow pentomino because we need to have a way for the X nestled in the purple P to escape:
Step 10:
Now for the top. The top central P-pentomino cannot be as hard left as it can be, or it would leave only 4 Xs. It also can't take the red X because otherwise we would need to make an "unmarked P" in the top left which would be adjacent to our lettered ones. The only shape that picks up the Xs that can't otherwise be reached is a Y-pentomino. Now that orange is pushed right, we know that the second red X must separate them no matter which way around the purple and orange Ps end up being:
Step 11:
There is now only one way the orange P can fit without isolating a single X so we can put that in and surround it with Xs:
Step 12:
Now we need to top right corner Xs to not be stranded. The only shjape that allows us to do this is a V-pentomino, which also settles most of our purple pentomino. Counting Xs leads us to realise that we still have two options - a P or a Q (as we need to not leave a cluster of 6 on the right). If we check the loop around the centre when we have a P, we have 3 options to leave. All 3 (lined in the diagram) cause an issue - 2 leave gaps and one leads to a forced touching pair.
Step 13:
So the P must be reversed into a Q. And we simply carve up the remaining X-space: