Very nice!

By curved, do you mean with altering altitude so the lines stay visible? If so, have you tried <LineString> with <tesselate> set to 1? Works well for me