“Some survivors begged us to rescue those trapped beneath the boat,” resident Monica de la Cruz, who watched the rescue effort off the municipality of Binangonan, told AFP.
“They were crying and some of them were injured.”
Cruz said the accident took place following a “sudden gust of wind, big waves and rain”, with locals initially too afraid to assist, fearing they would be “dragged down as well.”
The wooden outrigger “encountered strong winds prompting all passengers to panic” and move to one side of the vessel, the coast guard said in a statement.
“The boat had clearance to sail,” coast guard spokesman Rear Admiral Armando Balilo told reporters, downplaying speculation the typhoon had caused the accident.
The passenger boat was making its regular run from a Binangonan port to the island of Talim in the middle of the lake, municipality rescue official Kenneth Cirados told AFP.
Rescuers retrieved 23 bodies from the water and there were 40 survivors, he said.
Six people remained missing with the search set to resume Friday.
By nightfall, rescuers had righted the boat and dragged it close to shore, where its yellow hull sat in shallow water.
A broken motorcycle cargo and soiled pieces of tarp were draped over it.
“The boat sank in front of us while on its way home to the island,” said Binangonan resident Frederic Sison, who had been standing at the Kalinawan port when the incident happened.
Video footage of the rescue shared by the coast guard showed a man standing on the hull of the boat that was lying on its side, shouting “There are so many people here”, as small outrigger boats circled trying to help.
Another clip showed two rescuers leaning from the side of a boat to pluck a person who appeared to be unconscious from the calm waters.
Mobile phone footage taken by Sison and shared with AFP showed anxious people standing on the shore watching the boats take part in the frantic rescue effort.
In the video, a young boatman said he saved four people including a disabled person and a girl.
A woman could be seen doing chest compressions on one of several victims laid out on the concrete pier, as men lifted more motionless people out of small boats.
Boats, including wooden outriggers and passenger ferries that provide transport between islands, had been ordered to shore in Luzon and central islands earlier in the week due to gale warnings as the typhoon intensified the southwest monsoon.
The Philippines, an archipelago of more than 7,000 islands, has a poor maritime safety record, with scores dying in mishaps at sea each year, usually aboard wooden-hulled outriggers used for fishing or to move people from one small island to another.