They do have a lot in common, but there are important differences.
Public views are based upon Graphical Views, which have built-in components and drag-and-drop build functionality. This can be good for a lot of things, but with convenience comes constraints.
Custom Views are much more flexible, but require that you write your own HTML, and knowing a bit of Javascript doesn't hurt.