Differential Manchester Encoding
Your representation is correct. Differential Manchester encodes each data bit as follow:


If it has the same value as the data bit before --> High to Low transition (that would be a '0' in non-differential Manchester)
If it has a different value than the data bit before --> Low to High Transition (that would be a '1' in non-differential Manchester).


The very first bit of the transmission would not be specified, you may choose to encode it as normal Manchester.

You may also first calculate the "differential data stream" and then perform a normal Manchester encoding of this differential data stream. The differential data stream would be defined as: \${\text{diff}}_i={\text{data}}_i \oplus {\text{data}}_{i-1}\$. 

For example if your data is 00110110 you would get X0101101 and then encode it as normal Manchester.

The decoding of the data stream is just the same. You may decode it first as normal Manchester and then apply \${\text{data}}_i={\text{decoded}}_i \oplus {\text{decoded}}_{i-1}\$