@CarlowSEO good point.
For SEO if you would want to rank for something specific you would need to create a page with those terms. But that is the same for any product, may be a pair of shoes or t-shirt.
Content does mather of course but I do not think that something like "Iphone 4 skin, front gunmetal, back deep sea blue" is something to optimize for. There are few thousand combinations in there, how do you go about that?
If we are talking about conversions/SEO those type of APPs do bring real value to the user, therefore to the page. In cold fact data you can see long sessions, user engagement, low bounce-rates, bookmarks. Metrics that do mater.
how do your apps control that the user should see the exact selection
Cart line item proprieties
It will always show always a non-customized image
It is a demo. On live projects I usually do the same overlay thing in cart.liquid. Several options there to show the customized product image.
The only limitation is on the Shopify checkout page where you do not have access to JavaScript but that is something on Plus can be solved.