Thank you for contacting support. Yes, you can change the layer of a shape by setting LayerMem.LayerMember.Value property. You require to set a layer index i.e. 0, 1 or 2. In that case, you do not need to delete and recreate a shape with similar id.
I hope it helps. Please do let me know in case any further assistance or questions.
Thank you for your inquiry. I’m sorry to share with you that currently you cannot add a new layer to the Visio diagram. I have logged this feature request under ticket id DIAGRAM-33440 in our issue tracking system. Your request has also been linked to this issue and you will be notified as soon as it is supported. Anyway, you can update a shape layer by setting LayerMem.LayerMember.Value property. We’re sorry for your inconvenience.
Please do let me know in case of any confusion or questions.