I've done a fair bit of work with regards to understanding Cinestyle and Picture Styles in general. I do see the point that many users make regarding black level, skin tones and other negatives but like all intermediate log profiles the end result is really about how you handle correction in post.
I'm not going to comment on Technicolor's sudden discontinuing of Color Assist (their own grading app) as I think it was purely a business decision based on numbers but there are a lot of clues about Cinestyle in interviews with it's creator - Josh Pines (find the videos on Youtube).
My findings regarding Cinestyle are pretty much this:
Cinestyle and Picture Styles are essential .ICC profiles. You can unlock Cinestyle using Matlab by modifying the header structure but that will not get you far or make the PS editable in PSE because the tone curve is affected by something further upstream than occurs with other picture styles.
Cinestyle is the only 'correctly' coded log Picture Style profile for Canon DSLRs. That is to say that each stop has the same amount of code values and are mapped using a formula, not some manually applied, arbitrary control points made in PSE. I, and I guess many others, have written to Josh Pines and Technicolor to ask for the exact formula used but Technicolor will not release the info - i.e. it had to be a reverse engineering job.
H.264 is always encoded with legal levels but Cinestyle is full range data.
The log curve of Cinestyle is close to Cineon log but is more a derivative of JPLog in that it is based on pivoted middle grey. JPLog is also from Josh Pines. A full-to-legal pre-adjustment of IRE (as used in the formula for Canon Log) is also 'likely' to be used in the Cinestyle formula.
The delogging lut that Technicolor provide is often confused as being 'Cinestyle to Rec709' and there have been several apps that base Cinestyle support on this. This assumption is wrong because it does not account for the s-curve. It is Rec709 in as much as it fits Cinestyle into a rec709 display space but it's not the actual BT.709 transfer function.
The inverse of the Cinestyle lut is
not Cinestyle.
Cinestyle was apparently developed using 'Canon Standard' color but the size of the PS file is very small and leads me to believe that it omits any color profile and is simply a straight forward log transform of white balanced raw data with sRGB primaries.
With H.264 being 8bit, correct exposure for Cinestyle is critical but there is very little in the way of instruction available. Going by the cryptic clues in interview videos with JP, it seems as though ISO320 is a sweet spot but, as DSLRs do not have a high base ISO, it's likely that ISO160 will capture the best DR vs noise ratio.
The recorded 'raised' black level of Cinestyle is one of the main points of user/reviewer criticism but it is there for a reason. H.264 encoder pays less attention to low code values which typically contain signal with the most noise so Cinestyle raises the noise floor just above the point where H.264 encoding will be detrimental to shadows.
Cinestyle was developed by Technicolor for the 5D Mark II BUT (importantly) internal H.264 encoding was never used in development. If you watch any of the show videos where JP is being interviewed about Cinestyle, he points out that the signal is taken from the HDMI port - but afaik the HDMI out on the 5D2 is interlaced?
The captured dynamic range of Cinestyle is actually very impressive (I would say slightly better than 8bit Canon log) but 8bit H.264 encoding destroys a lot of information in the process.
Some tips for shooting Cinestyle:
Most ML users will select Cinestyle as the record PS and set exposure with Neutral but the exposure tools in ML (except the raw histogram and zebras) will be affected by the settings of the exposure PS. In the absence of a better raw waveform monitor it's probably best to expose with raw zebras to ensure highlights are not clipped while using the exposure PS (i.e. Neutral, Standard etc) for checking the exposure isn't being lowered too much BUT you can't currently do this in ML as you would need to enable raw shooting, expose then change back to H.264 - hence my request a while back for this ability.
Nail your white balance before shooting using a white balance card and be sure to set the custom white balance to use the setting or you'll regret it later!
Use the recommended settings for Cinestyle i.e. Contrast -4, sat -2 and NO SHARPENING! Sharpening at this stage will only add artifacts. It's much better to add it in post. High pass or unsharpen masking are a good choice over normal sharpen plugins as they will only enhance the luminance edge contrast leading to less color artifacts and more natural images but don't over do it!
I'm personally a little skeptical of the recommended saturation setting as desaturating before encoding could actually be losing much color information. If the -2 setting is to emulate the appearance of a wider gamut it's not really a good idea because pixels with RGB Values that already have close to no color will become grey and this cannot be recovered.
Editing H.264 can be a pain, especially in DaVinci Resolve so it's a good idea to transcode to ProRes. There is little point using the high-end 444 or XQ options as there is no extra color information to take advantage of so ProRes HQ is fine.
http://rarevision.com/5dtorgb/ is still a great option for this.
Contouring or banding artifacts go hand-in-hand with 8bit H.264 so you will see them in gradients. If you have Neat video or another noise reduction plugin that offers Temporal Filtering you can remove or at least reduce banding by setting this option to use more than 1 frame. With Temporal Filtering set to 4 or 5 in Neat Video it usually removes all but the most stubborn banding.
If there is anything else I can think of I'll add it later.
Incidentally, GoPro Protune wasn't a Technicolor invention. It was developed (co-developed) by David Newman of GoPro and was derived from SI-2K log (also David Newman). He's written several articles on it over the years.
The Picture Style number in .cr2 files is just a flag to tell DPE which PS was active (and used for Jpegs). Custom Picture Styles are embedded in the .cr2 and read by DPE.