Here again, what I tried to do was feed a new PersonPart() to the shape being crated in controller. Convert that shape to dynamicModel in view so that I can get to the Picture field, and render an EditorFor(m => pictureField)

So Both options a, b are not working.

What is the best way to do this?
a. With a ViewModel that has MLPF included so that razor can do : EditFor(m =>
@Model.Picture) b. Feed a new instance of PersonPart in controller, and get to that field in razor view to render UI for MLPF
c. Information that will be most helpful for me is: All tutorials or examples show how to Display a MLPF. But where i'm running into problems is, if the MLPF is added in Migrations, and I want a Razor view to show an option to the user to upload the media (not
in the admin view, but in a front end page like an <input type="file"> type of scenario).

Again, I might be going entirely in the wrong way of it, but wanna figure this out.

a. I saw that the Display() driver method for MediaLibraryPickerField (MLPF) creates a shape : Fields_MediaLibraryPicker
I placed it in Placement.Info as: <Place Fields_MediaLibraryPicker="Content:0"/>

I guess that is what I was trying to do. Attach an image for the person in the front end.

Is custom way the only option of proceeding? by that I mean:

a. Create a file upload <input type="file"> on the front end, handle posted file in the controller, and insert into ConentType by newing up an instance in lets say IPersonService:
Something like: var person = _contentManager.New("Person") and inserting other fields?

Yes, if you want to allow front-end users to upload images, you'll have to use a file upload form, and handle that from a custom controller. You'll also have to handle the secure storage of those files.