One popular NTP setup recommended for Cassandra users is described at 
Thankshttps://blog.logentries.com/2014/03/synchronizing-clocks-in-a-cassandra-cluster-pt-2-solutions/ .

Summary of article is:
Setup recommends a dedicated pool of internal NTP servers which are associated as peers to provide a HA NTP service. Cassandra nodes sync to this dedicated pool but define one internal NTP server as preferred server to ensure relative clock synchronization. Internal NTP servers sync to external NTP servers.

My questions:

1. If my ISP provider is providing me a pool of reliable NTP servers, should I setup my own internal servers anyway or can I sync Cassandra nodes directly to the ISP provided servers and select one of the servers as preferred for relative clock synchronization?

I agree. If you have to rely on public NTP pool which selects random servers for sync, having an internal NTP server pool is justified for getting tight relative sync as described in the blog 

2. As per my understanding, peer association is ONLY for backup scenario . If a peer loses time synchronization source, then other peers can be used for time synchronization. Thus providing a HA service. But when everything is ok (happy path), does defining NTP servers synced from different sources as peers lead them to converge time as mentioned in some forums?

e.g. if A and B are peers and thier times are 9:00:00 and 9:00:10 after syncing with respective time sources, then will they converge their clocks as 9:00:05?

I doubt the above claim regarding time converge. Also no formal doc says that. Comments?